home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-20 / nosrefer.zip / KA9QNOS.TXT < prev   
Text File  |  1991-03-18  |  131KB  |  3,631 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.              NET User Reference Manual (NOS Version)
  11.  
  12.  
  13.                          Phil Karn, KA9Q
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20. _1.  _T_h_e _N_E_T._E_X_E _P_r_o_g_r_a_m
  21.  
  22. The MS-DOS executable file net.exe  provides  Internet  (TCP/IP),
  23. NET/ROM  and AX.25 facilities.  Because it has an internal multi-
  24. tasking operating system, net.exe can  act  simultaneously  as  a
  25. client, a server and a packet switch for all three sets of proto-
  26. cols. That is, while a local user accesses remote  services,  the
  27. system can also provide those same services to remote users while
  28. also switching IP, NET/ROM and AX.25 packets and  frames  between
  29. other client and server nodes.
  30.  
  31. The keyboard and display is used by the local operator to control
  32. both host and gateway level functions, for which a number of com-
  33. mands are provided.
  34.  
  35. _1._1.  _I_n_s_t_a_l_l_a_t_i_o_n
  36.  
  37. Net.exe uses the following directory structure:
  38.  
  39.         /net
  40.         /net/spool
  41.         /net/spool/help
  42.         /net/spool/mail
  43.         /net/spool/mqueue
  44.         /net/spool/rqueue
  45.         /net/spool/news
  46.  
  47.  
  48. The "/net" directory is not strictly necessary, and  defaults  to
  49. the  root of the current drive.  Any name may be chosen using the
  50. -d   command-line   option   (described   below).    The   alias,
  51. autoexec.net, dialer, domain.txt and ftpusers configuration files
  52. are located here.
  53.  
  54. The "/spool" directory and its sub-directories are  used  by  the
  55. bbs,  SMTP  and  NNTP services.  The areas, forward.bbs, history,
  56. mail.log, rewrite and signatur configuration  files  are  located
  57. here.
  58.  
  59. The alias, forward.bbs and rewrite files  are  described  in  the
  60. document "maildoc", which should be found at the same location as
  61.  
  62.  
  63.  
  64. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  65.  
  66.  
  67.  
  68.  
  69.  
  70.                            - 2 -
  71.  
  72.  
  73. this file.
  74.  
  75. _1._2.  _n_e_t [-_b] [-_s <_s_o_c_k_e_t_s>] [-_d <_d_i_r_e_c_t_o_r_y>] [<_s_t_a_r_t_u_p _f_i_l_e>]
  76.  
  77. _1._2._1.  -_b
  78.  
  79. The -b option specifies the use of BIOS for console  output;  the
  80. default  is  to  write  directly to the video display buffer. Use
  81. this option if you are running under a windowing package and have
  82. trouble with output "bleeding through" on top of other windows.
  83.  
  84. _1._2._2.  -_s
  85.  
  86. The -s option specifies the size of the _s_o_c_k_e_t array to be  allo-
  87. cated  within  net.exe. This limits the number of network connec-
  88. tions that may exist simultaneously.  The default is 40.
  89.  
  90. _1._2._3.  -_d
  91.  
  92. The -d option allows the user to specify a directory for the con-
  93. figuration  and spool files; it defaults to the root directory of
  94. the system.
  95.  
  96. _1._2._4.  _S_t_a_r_t_u_p _f_i_l_e
  97.  
  98. After all command-line options, the name of a startup file may be
  99. specified.   If no startup file is specified, net.exe attempts to
  100. open a file named autoexec.net in the configuration directory  of
  101. the  current  drive.  If the file exists, it is read and executed
  102. as though its contents were typed on  the  console  as  commands.
  103. (See  the Commands chapter.) This feature is useful for attaching
  104. communication  interfaces,  configuring  network  addresses,  and
  105. starting the various services.
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  131.  
  132.  
  133.  
  134.  
  135.  
  136.                            - 3 -
  137.  
  138.  
  139. _2.  _C_o_n_s_o_l_e _m_o_d_e_s
  140.  
  141. The console may be in one of two modes: _c_o_m_m_a_n_d _m_o_d_e and _c_o_n_v_e_r_s_e
  142. _m_o_d_e.   In  _c_o_m_m_a_n_d _m_o_d_e, the prompt net> is displayed and any of
  143. the commands described in the Commands chapter  may  be  entered.
  144. In  _c_o_n_v_e_r_s_e  _m_o_d_e,  keyboard input is processed according to the
  145. _c_u_r_r_e_n_t _s_e_s_s_i_o_n.
  146.  
  147. Sessions come in many types, including _T_e_l_n_e_t, _F_T_P, _A_X_2_5, _N_E_T_R_O_M,
  148. _P_i_n_g,  _M_o_r_e, _H_o_p_c_h_e_c_k and _T_i_p.  In a Telnet, AX25, NETROM, or Tip
  149. session, keyboard input is sent to the remote system and any out-
  150. put from the remote system is displayed on the console.  In a FTP
  151. session, keyboard input is first examined to see if it is a known
  152. local  command;  if  so  it  is  executed locally.  If not, it is
  153. "passed through" to the remote FTP server.  (See the FTP  Subcom-
  154. mands  chapter).  In a Ping session the user may test the path to
  155. a remote site, and in a More session,  the  user  may  examine  a
  156. local file. A Hopcheck session is used to trace the path taken by
  157. packets to reach a specified destination.
  158.  
  159. The keyboard also has _c_o_o_k_e_d and _r_a_w states.   In  _c_o_o_k_e_d  state,
  160. input  is line-at-a-time; the user may use the line editing char-
  161. acters ^U, ^R and backspace to erase the line, redisplay the line
  162. and  erase  the  last  character,  respectively.   Hitting either
  163. return or line feed passes the complete line up to  the  applica-
  164. tion.   In _r_a_w state, each character is immediately passed to the
  165. application as it is typed.
  166.  
  167. The keyboard is always in _c_o_o_k_e_d state in command  mode.   It  is
  168. also  _c_o_o_k_e_d in converse mode on an AX25, FTP or NET/ROM session.
  169. In a Telnet session it depends on  whether  the  remote  end  has
  170. issued  (and  the  local  end  has accepted) the Telnet WILL ECHO
  171. option (see the echo command).
  172.  
  173. On the IBM-PC, the user may escape back to _c_o_m_m_a_n_d _m_o_d_e  by  hit-
  174. ting  the  F10  key.   On  other systems, the user must enter the
  175. _e_s_c_a_p_e character, which is by default control-]  (hex  1d,  ASCII
  176. GS).  (Note that this is distinct from the ASCII character of the
  177. same name).  The _e_s_c_a_p_e character can be changed (see the  escape
  178. command).
  179.  
  180. In the IBM PC version, each session (including the command  "ses-
  181. sion")  has  its  own screen.  When a new session is created, the
  182. command display is saved in memory and  the  screen  is  cleared.
  183. When  the  command  escape  key (usually F10) is hit, the current
  184. session screen is saved and the command screen is restored.  When
  185. a  session  is  resumed,  its  screen  is  restored exactly as it
  186. appeared when it was last current.
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  197.  
  198.  
  199.  
  200.  
  201.  
  202.                            - 4 -
  203.  
  204.  
  205. _3.  _C_o_m_m_a_n_d_s
  206.  
  207. This chapter describes the commands recognized in  command  mode,
  208. or  within  a startup file such as autoexec.net.  These are given
  209. in the following notation:
  210.  
  211.         command
  212.         command literal_parameter
  213.         command subcommand <parameter>
  214.         command [<optional_parameter>]
  215.         command a | b
  216.  
  217.  
  218. Many commands  take  subcommands  or  parameters,  which  may  be
  219. optional  or  required.  In  general, if a required subcommand or
  220. parameter is omitted, an error message will summarize the  avail-
  221. able  subcommands or required parameters.  (Giving a '?' in place
  222. of the subcommand will also generate the message.  This is useful
  223. when  the  command  word  alone is a valid command.) If a command
  224. takes an optional value parameter, issuing  the  command  without
  225. the  parameter  generally displays the current value of the vari-
  226. able. (Exceptions to this rule are noted in the  individual  com-
  227. mand descriptions.)
  228.  
  229. Two or more parameters separated  by  vertical  bar(s)  denote  a
  230. choice  between  the  specified  values.  Optional parameters are
  231. shown enclosed in [brackets], and a parameter enclosed in  <angle
  232. brackets> should be replaced with an actual value or string.  For
  233. example, the notation <hostid> denotes an actual host or gateway,
  234. which  may  be  specified  in  one  of  two ways: as a numeric IP
  235. address in dotted decimal notation (eg. 44.0.0.1), or as  a  sym-
  236. bolic name listed in the file domain.txt.
  237.  
  238. All commands and many subcommands may be  abbreviated.  You  only
  239. need  type enough of a command's name to distinguish it from oth-
  240. ers that begin with the same series of letters. Parameters,  how-
  241. ever, must be typed in full.
  242.  
  243. Certain FTP subcommands (eg. put, get, dir, etc)  are  recognized
  244. only  in converse mode with the appropriate FTP session; they are
  245. not  recognized  in  command  mode.   (See  the  FTP  Subcommands
  246. chapter.)
  247.  
  248. _3._1.  <_C_R>
  249.  
  250. Entering a carriage return (empty line)  while  in  command  mode
  251. puts  you  in converse mode with the current session. If there is
  252. no current session, net.exe remains in command mode.
  253.  
  254. _3._2.  !
  255.  
  256. An alias for the shell command.
  257.  
  258.  
  259.  
  260.  
  261.  
  262. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  263.  
  264.  
  265.  
  266.  
  267.  
  268.                            - 5 -
  269.  
  270.  
  271. _3._3.  #
  272.  
  273. Commands starting with the hash mark (#)  are  ignored.  This  is
  274. mainly useful for comments in the autoexec.net file.
  275.  
  276. _3._4.  _a_b_o_r_t [<_s_e_s_s_i_o_n #>]
  277.  
  278. Abort a FTP get, put or dir  operation  in  progress.  If  issued
  279. without  an  argument, the current session is aborted. (This com-
  280. mand works only on FTP sessions.) When receiving  a  file,  abort
  281. simply  resets the data connection; the next incoming data packet
  282. will generate a TCP RST (reset)  response  to  clear  the  remote
  283. server.   When  sending  a  file, abort sends a premature end-of-
  284. file. Note that in both cases abort will leave a partial copy  of
  285. the  file on the destination machine, which must be removed manu-
  286. ally if it is unwanted.
  287.  
  288. _3._5.  _a_r_p
  289.  
  290. Display the  Address  Resolution  Protocol  table  that  maps  IP
  291. addresses to their subnet (link) addresses on subnetworks capable
  292. of broadcasting.  For each IP address entry the subnet type  (eg.
  293. Ethernet, AX.25), subnet address and time to expiration is shown.
  294. If the link address  is  currently  unknown,  the  number  of  IP
  295. datagrams awaiting resolution is also shown.
  296.  
  297. _3._5._1.  _a_r_p _a_d_d <_h_o_s_t_i_d> _e_t_h_e_r_n_e_t |  _a_x_2_5  <_e_t_h_e_r_n_e_t  _a_d_d_r_e_s_s>  |
  298. <_a_x_2_5__a_d_d_r_e_s_s>
  299.  
  300. Add a permanent entry to the table. It will not time out as  will
  301. an  automatically-created entry, but must be removed with the arp
  302. drop command.
  303.  
  304. _3._5._2.  _a_r_p _p_u_b_l_i_s_h <_h_o_s_t_i_d> _e_t_h_e_r_n_e_t | _a_x_2_5 <_e_t_h_e_r_n_e_t _a_d_d_r_e_s_s> |
  305. <_a_x_2_5__a_d_d_r_e_s_s>
  306.  
  307. This command is similar to the arp add command, but  system  will
  308. also respond to any ARP request it sees on the network that seeks
  309. the specified address.  (Use this feature with great care.)
  310.  
  311. _3._5._3.  _a_r_p _d_r_o_p <_h_o_s_t_i_d> _a_x_2_5 | _e_t_h_e_r_n_e_t
  312.  
  313. Remove the specified entry from the ARP table.
  314.  
  315. _3._5._4.  _a_r_p _f_l_u_s_h
  316.  
  317. Drop all automatically-created entries in  the  ARP  table;  per-
  318. manent entries are not affected.
  319.  
  320. _3._6.  _a_s_y_s_t_a_t
  321.  
  322. Display statistics on attached asynchronous communications inter-
  323. faces  (8250  or  16550A), if any. The display for each port con-
  324. sists of three lines. The first line gives the port label and the
  325.  
  326.  
  327.  
  328. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  329.  
  330.  
  331.  
  332.  
  333.  
  334.                            - 6 -
  335.  
  336.  
  337. configuration  flags; these indicate whether the port is a 16550A
  338. chip, the _t_r_i_g_g_e_r _c_h_a_r_a_c_t_e_r if any, whether CTS flow  control  is
  339. enabled,  whether  RLSD (carrier detect) line control is enabled,
  340. and the speed in bits per second.  (Receiving the _t_r_i_g_g_e_r _c_h_a_r_a_c_-
  341. _t_e_r causes the driver to signal upper layer software that data is
  342. ready; it is automatically set to the appropriate frame end char-
  343. acter for SLIP, PPP and NRS lines.)
  344.  
  345. The second line of the status display shows receiver  (RX)  event
  346. counts:  the total number of receive interrupts, received charac-
  347. ters, receiver overruns (lost characters) and the  receiver  _h_i_g_h
  348. _w_a_t_e_r _m_a_r_k.  The high water mark is the maximum number of charac-
  349. ters ever read from the device during a single interrupt. This is
  350. useful  for  monitoring  system  interrupt  latency margins as it
  351. shows how close the port hardware has come to overflowing due  to
  352. the  inability  of  the CPU to respond to a receiver interrupt in
  353. time. 8250 chips have no FIFO, so the high water mark  cannot  go
  354. higher  than  2  before overruns occur. The 16550A chip, however,
  355. has a 16-byte receive FIFO which the software programs to  inter-
  356. rupt  the  CPU when the FIFO is one-quarter full.  The high water
  357. mark should typically be 4 or 5 when a  16550A  is  used;  higher
  358. values  indicate  that  the  CPU  has  at least once been slow to
  359. respond to a receiver interrupt.
  360.  
  361. When the 16550A is  used,  a  count  of  FIFO  timeouts  is  also
  362. displayed  on  the  RX status line. These are generated automati-
  363. cally by the 16550A when three character  intervals  go  by  with
  364. more  than  0  but  less than 4 characters in the FIFO. Since the
  365. characters that make up a SLIP or NRS frame are normally sent  at
  366. full  line speed, this count will usually be a lower bound on the
  367. number of frames received on the port, as only the last  fragment
  368. of a frame generally results in a timeout (and then only when the
  369. frame is not a multiple of 4 bytes long.)
  370.  
  371. Finally, the software fifo  overruns  and  high  water  mark  are
  372. displayed.  These indicate whether the <bufsize> parameter on the
  373. attach command needs to be  adjusted  (see  the  Attach  Commands
  374. chapter).
  375.  
  376. The third line shows transmit (TX) statistics, including a  total
  377. count  of transmit interrupts, transmitted characters, the length
  378. of the transmit queue in bytes, the number of status  interrupts,
  379. and the number of THRE timeouts.  The status interrupt count will
  380. be zero unless CTS flow control or RLSD  line  control  has  been
  381. enabled.   The  THRE  timeout  is a stopgap measure to catch lost
  382. transmit interrupts, which seem to happen when there is a lot  of
  383. activity (ideally, this will be zero).
  384.  
  385. _3._7.  _a_t_t_a_c_h <_h_w _t_y_p_e> ...
  386.  
  387. Configure  and  attach  a  hardware  interface  to  the   system.
  388. Detailed  instructions for each driver are in the Attach Commands
  389. chapter.  An easy way to  obtain  a  summary  of  the  parameters
  390. required  for a given device is to issue a partial attach command
  391.  
  392.  
  393.  
  394. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  395.  
  396.  
  397.  
  398.  
  399.  
  400.                            - 7 -
  401.  
  402.  
  403. (eg. attach packet).  This produces a usage  message  giving  the
  404. complete command format.
  405.  
  406. _3._8.  _a_x_2_5 ...
  407.  
  408. These commands are used for AX25 interfaces.
  409.  
  410. _3._8._1.  _a_x_2_5 _b_l_i_m_i_t [<_c_o_u_n_t>]
  411.  
  412. Display or set the AX25 retransmission  backoff  limit.  Normally
  413. each successive AX25 retransmission is delayed by twice the value
  414. of the previous interval; this is called _b_i_n_a_r_y _e_x_p_o_n_e_n_t_i_a_l _b_a_c_k_-
  415. _o_f_f.   When  the backoff reaches the blimit setting it is held at
  416. that value, which defaults to 30.  To prevent the possibility  of
  417. "congestive  collapse"  on a loaded channel, blimit should be set
  418. at least as high as the number of stations sharing  the  channel.
  419. Note  that this is applicable only on actual AX25 connections; UI
  420. frames will never be retransmitted by the AX25 layer.
  421.  
  422. _3._8._2.  _a_x_2_5 _d_i_g_i_p_e_a_t [_o_n | _o_f_f]
  423.  
  424. Display or set the digipeater enable flag.
  425.  
  426. _3._8._3.  _a_x_2_5 _f_l_u_s_h
  427.  
  428. Clear the AX.25 "heard" list (see ax25 heard).
  429.  
  430. _3._8._4.  _a_x_2_5 _h_e_a_r_d
  431.  
  432. Display the AX.25 "heard" list. For each interface that  is  con-
  433. figured  to use AX.25, a list of all callsigns heard through that
  434. interface is shown, along with a count of the number  of  packets
  435. heard  from  each station and the interval, in hr:min:sec format,
  436. since each station was last  heard.   The  local  station  always
  437. appears  first in the listing; the packet count actually reflects
  438. the number of packets transmitted. This entry is  always  present
  439. even if no packets have been sent.
  440.  
  441. _3._8._5.  _a_x_2_5 _i_r_t_t [<_m_i_l_l_i_s_e_c_o_n_d_s>]
  442.  
  443. Display or set the initial value of smoothed round trip  time  to
  444. be  used  when  a new AX25 connection is created. The value is in
  445. milliseconds.  The actual round trip  time  will  be  learned  by
  446. measurement once the connection has been established.
  447.  
  448. _3._8._6.  _a_x_2_5 _k_i_c_k <_a_x_c_b>
  449.  
  450. Force a retransmission on the specified AX.25 control block.
  451.  
  452. _3._8._7.  _a_x_2_5 _m_a_x_f_r_a_m_e [<_c_o_u_n_t>]
  453.  
  454. Establish the maximum number of frames that will  be  allowed  to
  455. remain  unacknowledged at one time on new AX.25 connections. This
  456. number cannot be greater than 7.
  457.  
  458.  
  459.  
  460. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  461.  
  462.  
  463.  
  464.  
  465.  
  466.                            - 8 -
  467.  
  468.  
  469. _3._8._8.  _a_x_2_5 _m_y_c_a_l_l [<_c_a_l_l>]
  470.  
  471. Display or set the local AX.25 address.  The standard  format  is
  472. used (eg. KA9Q-0 or WB6RQN-5).  This command must be given before
  473. any attach commands using AX.25 mode are given.
  474.  
  475. _3._8._9.  _a_x_2_5 _p_a_c_l_e_n [<_s_i_z_e>]
  476.  
  477. Limit the size of I-fields  on  new  AX.25  connections.   If  IP
  478. datagrams  or  fragments  larger  than this are transmitted, they
  479. will be transparently fragmented at the AX.25 level,  sent  as  a
  480. series  of  I  frames,  and  reassembled  back into a complete IP
  481. datagram or fragment at the other end of the link.  To  have  any
  482. effect  on  IP  datagrams,  this parameter should be less than or
  483. equal to the MTU of the associated interface.
  484.  
  485. _3._8._1_0.  _a_x_2_5 _p_t_h_r_e_s_h [<_s_i_z_e>]
  486.  
  487. Display or set the poll threshold to be used for new  AX.25  Ver-
  488. sion  2  connections.  The poll threshold controls retransmission
  489. behavior as follows. If the oldest unacknowledged I-frame size is
  490. less  than  the poll threshold, it will be sent with the poll (P)
  491. bit set if a timeout occurs.  If the oldest unacked I-frame  size
  492. is  equal  to  or  greater  than  the threshold, then a RR or RNR
  493. frame, as appropriate, with the poll bit set will be  sent  if  a
  494. timeout occurs.
  495.  
  496. The idea behind the poll threshold is that the extra time  needed
  497. to  send  a  "small"  I-frame instead of a supervisory frame when
  498. polling after a timeout is small, and since there's a good chance
  499. the  I-frame  will  have to be sent anyway (i.e., if it were lost
  500. previously) then you might as well send it as the  poll.  But  if
  501. the I-frame is large, send a supervisory (RR/RNR) poll instead to
  502. determine first if retransmitting the  oldest  unacknowledged  I-
  503. frame  is necessary; the timeout might have been caused by a lost
  504. acknowledgement.  This is obviously  a  tradeoff,  so  experiment
  505. with  the  poll  threshold setting. The default is 128 bytes, one
  506. half the default value of paclen.
  507.  
  508. _3._8._1_1.  _a_x_2_5 _r_e_s_e_t <_a_x_c_b>
  509.  
  510. Delete the  AX.25  connection  control  block  at  the  specified
  511. address.
  512.  
  513. _3._8._1_2.  _a_x_2_5 _r_e_t_r_y [<_c_o_u_n_t>]
  514.  
  515. Limit  the  number  of  successive  unsuccessful   retransmission
  516. attempts  on  new  AX.25  connections. If this limit is exceeded,
  517. link re-establishment is attempted. If this  fails  retry  times,
  518. then the connection is abandoned and all queued data is deleted.
  519.  
  520. _3._8._1_3.  _a_x_2_5 _r_o_u_t_e
  521.  
  522. Display the AX.25 routing table that specifies the digipeaters to
  523.  
  524.  
  525.  
  526. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  527.  
  528.  
  529.  
  530.  
  531.  
  532.                            - 9 -
  533.  
  534.  
  535. be used in reaching a given station.
  536.  
  537. _3._8._1_3._1.  _a_x_2_5 _r_o_u_t_e _a_d_d <_t_a_r_g_e_t> [_d_i_g_i_s ... ]
  538.  
  539. Add an entry to the AX.25 routing table.  An automatic ax25 route
  540. add  is  executed if digipeaters are specified in an AX25 connect
  541. command, or if a connection is received from a remote station via
  542. digipeaters.  Such automatic routing table entries won't override
  543. locally created entries, however.
  544.  
  545. _3._8._1_3._2.  _a_x_2_5 _r_o_u_t_e _d_r_o_p <_t_a_r_g_e_t>
  546.  
  547. Drop an entry from the AX.25 routing table.
  548.  
  549. _3._8._1_4.  _a_x_2_5 _s_t_a_t_u_s [<_a_x_c_b>]
  550.  
  551. Without an argument, display a one-line  summary  of  each  AX.25
  552. control  block.   If the address of a particular control block is
  553. specified, the contents of that control block are dumped in  more
  554. detail.  Note  that  the  send  queue units are frames, while the
  555. receive queue units are bytes.
  556.  
  557. _3._8._1_5.  _a_x_2_5 _t_3 [<_m_i_l_l_i_s_e_c_o_n_d_s>]
  558.  
  559. Display or set the AX.25 idle "keep alive"  timer.  Value  is  in
  560. milliseconds.
  561.  
  562. _3._8._1_6.  _a_x_2_5 _v_e_r_s_i_o_n [_1 | _2]
  563.  
  564. Display or set the version of the AX.25 protocol  to  attempt  to
  565. use  on  new connections. The default is 1 (the version that does
  566. not use the poll/final bits).
  567.  
  568. _3._8._1_7.  _a_x_2_5 _w_i_n_d_o_w [<_s_i_z_e>]
  569.  
  570. Set the number of bytes that can be pending on an  AX.25  receive
  571. queue  beyond  which I frames will be answered with RNR (Receiver
  572. Not Ready) responses.  This presently applies only  to  suspended
  573. interactive  AX.25  sessions,  since incoming I-frames containing
  574. network (IP, NET/ROM) packets are  always  processed  immediately
  575. and  are not placed on the receive queue.  However, when an AX.25
  576. connection carries both interactive and network  packet  traffic,
  577. an  RNR  generated because of backlogged interactive traffic will
  578. also stop network packet traffic from being sent.
  579.  
  580. _3._9.  _c_d [<_d_i_r_n_a_m_e>]
  581.  
  582. Change the current working directory, and display  the  new  set-
  583. ting.  Without an argument, cd simply displays the current direc-
  584. tory without change.  The pwd command is an alias for cd.
  585.  
  586. _3._1_0.  _c_l_o_s_e [<_s_e_s_s_i_o_n>]
  587.  
  588. Close the specified  session;  without  an  argument,  close  the
  589.  
  590.  
  591.  
  592. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  593.  
  594.  
  595.  
  596.  
  597.  
  598.                            - 10 -
  599.  
  600.  
  601. current  session.   On an AX.25 session, this command initiates a
  602. disconnect.  On a FTP or Telnet session, this command sends a FIN
  603. (i.e.,  initiates a close) on the session's TCP connection.  This
  604. is an alternative to asking the remote server to initiate a close
  605. (QUIT  to  FTP,  or the logout command appropriate for the remote
  606. system in the case of Telnet).  When either FTP  or  Telnet  sees
  607. the  incoming  half  of  a TCP connection close, it automatically
  608. responds by closing the outgoing half of the  connection.   Close
  609. is  more  graceful  than  the  reset  command, in that it is less
  610. likely to leave the remote TCP in a "half-open" state.
  611.  
  612. _3._1_1.  _c_o_n_n_e_c_t <_i_f_a_c_e> <_c_a_l_l_s_i_g_n> [<_d_i_g_i_p_e_a_t_e_r> ... ]
  613.  
  614. Initiate a "vanilla" AX.25 session to  the  specified  call  sign
  615. using the specified interface. Data sent on this session goes out
  616. in conventional AX.25 packets with no upper layer protocol.   The
  617. de-facto  presentation  standard  format  is  used,  in that each
  618. packet holds one line of text, terminated by a  carriage  return.
  619. A  single  AX.25 connection may be used for terminal-to-terminal,
  620. IP and NET/ROM traffic.  The three types of  data  are  automati-
  621. cally separated by their AX.25 Level 3 Protocol IDs.
  622.  
  623. Up to 7 optional digipeaters may be given; note that the word via
  624. is  NOT  needed. If digipeaters are specified, they are automati-
  625. cally added to the AX25 routing table as though  the  ax25  route
  626. add command had been given before issuing the connect command.
  627.  
  628. _3._1_2.  _d_e_l_e_t_e <_f_i_l_e_n_a_m_e>
  629.  
  630. Delete a filename in the current working directory.
  631.  
  632. _3._1_3.  _d_e_t_a_c_h <_i_f_a_c_e>
  633.  
  634. Detach a previously attached interface from the  system.  All  IP
  635. routing  table  entries  referring to this interface are deleted,
  636. and forwarding references by any other interface to  this  inter-
  637. face are removed.
  638.  
  639. _3._1_4.  _d_i_a_l_e_r <_i_f_a_c_e> <_s_e_c_o_n_d_s> <_h_o_s_t_i_d> <_p_i_n_g_s> <_d_i_a_l_e_r-_f_i_l_e>
  640.  
  641. Setup an autodialer session  for  the  interface.   Whenever  the
  642. interface  is  idle for the interval in <seconds>, the autodialer
  643. will ping the <hostid>.  If there  is  no  answer  after  <pings>
  644. attempts,  the  autodialer will execute the special commands con-
  645. tained in the <dialer-file>.
  646.  
  647. If the interval in <seconds> is zero, a previous  dialer  command
  648. process  will  be removed.  If the number of <pings> is zero, the
  649. <dialer-file> will be executed without pinging the <hostid>.
  650.  
  651. The file may have any valid name, and must be located in the con-
  652. figuration  directory (see the Installion section).  The commands
  653. in the file are described in the Dialer Subcommands chapter.
  654.  
  655.  
  656.  
  657.  
  658. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  659.  
  660.  
  661.  
  662.  
  663.  
  664.                            - 11 -
  665.  
  666.  
  667. _3._1_5.  _d_i_r [<_d_i_r_n_a_m_e>]
  668.  
  669. List the contents of the specified directory on the  console.  If
  670. no  argument is given, the current directory is listed. Note that
  671. this command works by first listing the  directory  into  a  tem-
  672. porary  file,  and  then  creating  a more session to display it.
  673. After this completes, the temporary file is deleted.
  674.  
  675. _3._1_6.  _d_i_s_c_o_n_n_e_c_t [<_s_e_s_s_i_o_n #>]
  676.  
  677. An alias for the close command (for the benefit of AX.25 users).
  678.  
  679. _3._1_7.  _d_o_m_a_i_n ...
  680.  
  681. These commands are used for access to the Domain Name Service.
  682.  
  683. _3._1_7._1.  _d_o_m_a_i_n _a_d_d_s_e_r_v_e_r <_h_o_s_t_i_d>
  684.  
  685. Add one or more  domain  name  server(s)  to  the  list  of  name
  686. servers.
  687.  
  688. _3._1_7._2.  _d_o_m_a_i_n _d_r_o_p_s_e_r_v_e_r <_h_o_s_t_i_d>
  689.  
  690. Remove one or more domain name server(s) from the  list  of  name
  691. servers.
  692.  
  693. _3._1_7._3.  _d_o_m_a_i_n _l_i_s_t_s_e_r_v_e_r_s
  694.  
  695. List the currently configured domain  name  servers,  along  with
  696. statistics  on  how  many queries and replies have been exchanged
  697. with each one, response times, etc.
  698.  
  699. _3._1_7._4.  _d_o_m_a_i_n _q_u_e_r_y <_h_o_s_t_i_d>
  700.  
  701. Send a query to a domain server asking for all  resource  records
  702. associated with this <hostid>, and list the records.
  703.  
  704. _3._1_7._5.  _d_o_m_a_i_n _r_e_t_r_y [<_c_o_u_n_t>]
  705.  
  706. Display or set the number of attempts to reach each server on the
  707. list during one call to the resolver.  If this count is exceeded,
  708. a failure indication is returned.  If set to  0,  the  list  will
  709. cycle  forever; this may be useful for unattended operation.  The
  710. default is 3.
  711.  
  712. _3._1_7._6.  _d_o_m_a_i_n _s_u_f_f_i_x [<_d_o_m_a_i_n _s_u_f_f_i_x>]
  713.  
  714. Display or specify the default domain name suffix to be  appended
  715. to  a  host name when it contains no periods. For example, if the
  716. suffix is set to ampr.org and the user enters  telnet  ka9q,  the
  717. domain  resolver  will attempt to find ka9q.ampr.org. If the host
  718. name being sought contains one  or  more  periods,  however,  the
  719. default  suffix  is  NOT applied (eg. telnet foo.bar would NOT be
  720. turned into foo.bar.ampr.org).
  721.  
  722.  
  723.  
  724. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  725.  
  726.  
  727.  
  728.  
  729.  
  730.                            - 12 -
  731.  
  732.  
  733. _3._1_7._7.  _d_o_m_a_i_n _t_r_a_c_e [_o_n | _o_f_f]
  734.  
  735. Display or set the flag controlling the tracing of domain  server
  736. requests  and  responses.  Trace  messages will be seen only if a
  737. domain name being sought is not found in the  local  cache  file,
  738. domain.txt.
  739.  
  740. _3._1_7._8.  _d_o_m_a_i_n _c_a_c_h_e ...
  741.  
  742. These commands are used for the use of the resource  record  file
  743. domain.txt, and the local memory cache.
  744.  
  745. _3._1_7._8._1.  _d_o_m_a_i_n _c_a_c_h_e _c_l_e_a_n [_o_n | _o_f_f]
  746.  
  747. Display or set the  flag  controlling  the  removal  of  resource
  748. records  from  the domain.txt file whose time-to-live has reached
  749. zero.
  750.  
  751. When  clean  is  off  (the  default),  expired  records  will  be
  752. retained;  if  no replacement can be obtained from another domain
  753. name server, these records will continue to be used.
  754.  
  755. When clean is on, expired records will be removed from  the  file
  756. whenever any new record is added to the file.
  757.  
  758. _3._1_7._8._2.  _d_o_m_a_i_n _c_a_c_h_e _l_i_s_t
  759.  
  760. List the current contents of the local memory cache.
  761.  
  762. _3._1_7._8._3.  _d_o_m_a_i_n _c_a_c_h_e _s_i_z_e [<_c_o_u_n_t>]
  763.  
  764. Display or set the nominal  maximum  size  of  the  local  memory
  765. cache.  The default is 20.
  766.  
  767. (Note: The cache may be temporarily larger when waiting  for  new
  768. records to be written to the domain.txt file.)
  769.  
  770. _3._1_7._8._4.  _d_o_m_a_i_n _c_a_c_h_e _w_a_i_t [<_s_e_c_o_n_d_s>]
  771.  
  772. Display or set the interval in seconds  to  wait  for  additional
  773. activity before updating the domain.txt file.  The default is 300
  774. seconds (5 minutes).
  775.  
  776. _3._1_8.  _e_c_h_o [_a_c_c_e_p_t | _r_e_f_u_s_e]
  777.  
  778. Display or set the flag controlling client Telnet's response to a
  779. remote WILL ECHO offer.
  780.  
  781. The Telnet presentation protocol specifies that in the absence of
  782. a  negotiated  agreement to the contrary, neither end echoes data
  783. received from the other.  In this mode, a Telnet  client  session
  784. echoes  keyboard input locally and nothing is actually sent until
  785. a carriage return is typed. Local line editing is also performed:
  786. backspace  deletes  the  last  character  typed,  while control-U
  787.  
  788.  
  789.  
  790. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  791.  
  792.  
  793.  
  794.  
  795.  
  796.                            - 13 -
  797.  
  798.  
  799. deletes the entire line.
  800.  
  801. When communicating from keyboard to keyboard the  standard  local
  802. echo  mode  is  used,  so  the  setting  of this parameter has no
  803. effect. However, many timesharing systems (eg. UNIX) prefer to do
  804. their  own  echoing  of  typed input.  (This makes screen editors
  805. work right, among other things). Such systems send a Telnet  WILL
  806. ECHO  offer immediately upon receiving an incoming Telnet connec-
  807. tion request. If echo accept is in effect, a client  Telnet  ses-
  808. sion  will automatically return a DO ECHO response. In this mode,
  809. local echoing and editing is turned off and each  key  stroke  is
  810. sent  immediately  (subject  to  the  Nagle tinygram algorithm in
  811. TCP).  While this mode is just fine across  an  Ethernet,  it  is
  812. clearly  inefficient  and  painful  across slow paths like packet
  813. radio channels. Specifying echo refuse causes  an  incoming  WILL
  814. ECHO  offer  to  be  answered with a DONT ECHO; the client Telnet
  815. session remains in the local echo mode.  Sessions already in  the
  816. remote  echo  mode are unaffected. (Note: Berkeley Unix has a bug
  817. in that it will still  echo  input  even  after  the  client  has
  818. refused  the  WILL  ECHO offer. To get around this problem, enter
  819. the stty -echo command to the shell once you have logged in.)
  820.  
  821. _3._1_9.  _e_o_l [_u_n_i_x | _s_t_a_n_d_a_r_d]
  822.  
  823. Display or set Telnet's end-of-line behavior when in remote  echo
  824. mode.   In  standard  mode, each key is sent as-is. In unix mode,
  825. carriage returns are translated to line feeds.  This  command  is
  826. not  necessary  with  all UNIX systems; use it only when you find
  827. that a particular system responds to line feeds but not  carriage
  828. returns.   Only SunOS release 3.2 seems to exhibit this behavior;
  829. later releases are fixed.
  830.  
  831. _3._2_0.  _e_s_c_a_p_e [<_c_h_a_r>]
  832.  
  833. Display or set the current command-mode escape character in  hex.
  834. (This  command  is  not  provided  on  the IBM-PC; on the PC, the
  835. escape char is always F10.)
  836.  
  837. _3._2_1.  _e_t_h_e_r_s_t_a_t
  838.  
  839. Display 3-Com Ethernet controller statistics (if configured).
  840.  
  841. _3._2_2.  _e_x_i_t
  842.  
  843. Exit the net.exe program and return to MS-DOS.
  844.  
  845. _3._2_3.  _f_i_n_g_e_r <_u_s_e_r@_h_o_s_t_i_d> [<_u_s_e_r@_h_o_s_t_i_d> ...]
  846.  
  847. Issue a network finger request for user user at host hostid. This
  848. creates  a  client  session  which  may  be interrupted, resumed,
  849. reset, etc, just like a Telnet client session.
  850.  
  851.  
  852.  
  853.  
  854.  
  855.  
  856. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  857.  
  858.  
  859.  
  860.  
  861.  
  862.                            - 14 -
  863.  
  864.  
  865. _3._2_4.  _f_t_p <_h_o_s_t_i_d>
  866.  
  867. Open an FTP control channel to  the  specified  remote  host  and
  868. enter  converse  mode  on  the  new  session.  Responses from the
  869. remote server are displayed directly on the screen. See  the  FTP
  870. Subcommands chapter for descriptions of the commands available in
  871. a FTP session.
  872.  
  873. _3._2_5.  _h_e_l_p
  874.  
  875. Display a brief summary of top-level commands.
  876.  
  877. _3._2_6.  _h_o_p ...
  878.  
  879. These commands are used to test the connectivity of the network.
  880.  
  881. _3._2_6._1.  _h_o_p _c_h_e_c_k <_h_o_s_t_i_d>
  882.  
  883. Initiate a _h_o_p_c_h_e_c_k session to the specified host.  This  uses  a
  884. series  of  UDP  "probe" packets with increasing IP TTL fields to
  885. determine the sequence of gateways in the path to  the  specified
  886. destination. This function is patterned after the UNIX _t_r_a_c_e_r_o_u_t_e
  887. facility.
  888.  
  889. ICMP message tracing should be turned off before this command  is
  890. executed (see the icmp trace command).
  891.  
  892. _3._2_6._2.  _h_o_p _m_a_x_t_t_l [<_h_o_p_s>]
  893.  
  894. Display or set the maximum TTL value to be used in hop check ses-
  895. sions.  This effectively bounds the radius of the search.
  896.  
  897. _3._2_6._3.  _h_o_p _m_a_x_w_a_i_t [<_s_e_c_o_n_d_s>]
  898.  
  899. Display or set the maximum interval that a hopcheck session  will
  900. wait  for  responses at each stage of the trace. The default is 5
  901. seconds.
  902.  
  903. _3._2_6._4.  _h_o_p _q_u_e_r_i_e_s [<_c_o_u_n_t>]
  904.  
  905. Display or set the number of UDP probes that will be sent at each
  906. stage of the trace. The default is 3.
  907.  
  908. _3._2_6._5.  _h_o_p _t_r_a_c_e [_o_n | _o_f_f]
  909.  
  910. Display or set the flag that controls the display  of  additional
  911. information during a hop check session.
  912.  
  913. _3._2_7.  _h_o_s_t_n_a_m_e [<_n_a_m_e>]
  914.  
  915. Display or set the local host's name. By convention  this  should
  916. be  the  same  as  the host's primary domain name. This string is
  917. used only  in  the  greeting  messages  of  the  various  network
  918. servers; note that it does NOT set the system's IP address.
  919.  
  920.  
  921.  
  922. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  923.  
  924.  
  925.  
  926.  
  927.  
  928.                            - 15 -
  929.  
  930.  
  931. If <name> is the same as an  <iface>  (see  the  Attach  commands
  932. chapter),  this  command  will search for a CNAME domain resource
  933. record which corresponds to the IP address of the <iface>.
  934.  
  935. _3._2_8.  _h_s
  936.  
  937. Display statistics about the HS high speed HDLC driver  (if  con-
  938. figured and active).
  939.  
  940. _3._2_9.  _i_c_m_p ...
  941.  
  942. These commands are used for the Internet Control Message Protocol
  943. service.
  944.  
  945. _3._2_9._1.  _i_c_m_p _e_c_h_o [_o_n | _o_f_f]
  946.  
  947. Display or set the flag controlling the asynchronous  display  of
  948. ICMP Echo Reply packets.  This flag must be on for one-shot pings
  949. to work (see the ping command.)
  950.  
  951. _3._2_9._2.  _i_c_m_p _s_t_a_t_u_s
  952.  
  953. Display statistics about the Internet  Control  Message  Protocol
  954. (ICMP),  including  the number of ICMP messages of each type sent
  955. or received.
  956.  
  957. _3._2_9._3.  _i_c_m_p _t_r_a_c_e [_o_n | _o_f_f]
  958.  
  959. Display or set the flag controlling the  display  of  ICMP  error
  960. messages.  These informational messages are generated by Internet
  961. routers in response to routing, protocol or congestion  problems.
  962. This  option  should  be  turned  off  before using the hop check
  963. facility because it relies on ICMP Time  Exceeded  messages,  and
  964. the  asynchronous  display of these messages will be mingled with
  965. hop check command output.
  966.  
  967. _3._3_0.  _i_f_c_o_n_f_i_g
  968.  
  969. Display a list of interfaces, with a short status for each.
  970.  
  971. _3._3_0._1.  _i_f_c_o_n_f_i_g <_i_f_a_c_e>
  972.  
  973. Display an extended status of the interface.
  974.  
  975. _3._3_0._2.  _i_f_c_o_n_f_i_g <_i_f_a_c_e> _b_r_o_a_d_c_a_s_t <_a_d_d_r_e_s_s>
  976.  
  977. Set the broadcast address for the interface.  The <address> takes
  978. the  form  of  an  IP  address  with  1's in the host part of the
  979. address.  This is related to the netmask sub-command.   See  also
  980. the arp command.
  981.  
  982. _3._3_0._3.  _i_f_c_o_n_f_i_g <_i_f_a_c_e> _e_n_c_a_p_s_u_l_a_t_i_o_n <_n_a_m_e>
  983.  
  984. Not fully implemented.
  985.  
  986.  
  987.  
  988. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  989.  
  990.  
  991.  
  992.  
  993.  
  994.                            - 16 -
  995.  
  996.  
  997. _3._3_0._4.  _i_f_c_o_n_f_i_g <_i_f_a_c_e> _f_o_r_w_a_r_d <_f_o_r_w_a_r_d-_i_f_a_c_e>
  998.  
  999. Set a forwarding interface for multiple channel  interfaces.   To
  1000. remove the forward, set <forward-iface> to <iface>.
  1001.  
  1002. _3._3_0._5.  _i_f_c_o_n_f_i_g <_i_f_a_c_e> _i_p_a_d_d_r_e_s_s <_h_o_s_t_i_d>
  1003.  
  1004. Set the IP address for this interface.  It is  standard  Internet
  1005. practice that each interface has its own address.  For hosts with
  1006. only one interface, the interface address is usually the same  as
  1007. the host address.  See also the hostname and ip address commands.
  1008.  
  1009. _3._3_0._6.  _i_f_c_o_n_f_i_g <_i_f_a_c_e> _l_i_n_k_a_d_d_r_e_s_s <_h_a_r_d_w_a_r_e-_d_e_p_e_n_d_a_n_t>
  1010.  
  1011. Set the hardware dependant address for this interface.
  1012.  
  1013. _3._3_0._7.  _i_f_c_o_n_f_i_g <_i_f_a_c_e> _m_t_u <_m_t_u>
  1014.  
  1015. Set the MTU for this interface.  See the Setting ... MTU, MSS and
  1016. Window chapter for more information.
  1017.  
  1018. _3._3_0._8.  _i_f_c_o_n_f_i_g <_i_f_a_c_e> _n_e_t_m_a_s_k <_a_d_d_r_e_s_s>
  1019.  
  1020. Set the sub-net mask for this interface.  The <address> takes the
  1021. form of an IP address with 1's in the network and subnet parts of
  1022. the address, and 0's in the host part of the  address.   This  is
  1023. related  to  the  broadcast sub-command.  See also the route com-
  1024. mand.
  1025.  
  1026. _3._3_0._9.  _i_f_c_o_n_f_i_g <_i_f_a_c_e> _r_x_b_u_f <?>
  1027.  
  1028. Not yet implemented.
  1029.  
  1030. _3._3_1.  _i_p ...
  1031.  
  1032. These commands are used for the Internet Protocol service.
  1033.  
  1034. _3._3_1._1.  _i_p _a_d_d_r_e_s_s [<_h_o_s_t_i_d>]
  1035.  
  1036. Display or set the default local IP address. This command must be
  1037. given before an attach command if it is to be used as the default
  1038. IP address for the interface.
  1039.  
  1040. _3._3_1._2.  _i_p _r_t_i_m_e_r [<_s_e_c_o_n_d_s>]
  1041.  
  1042. Display or set the IP  reassembly  timeout.  The  default  is  30
  1043. seconds.
  1044.  
  1045. _3._3_1._3.  _i_p _s_t_a_t_u_s
  1046.  
  1047. Display Internet Protocol (IP) statistics, such as  total  packet
  1048. counts and error counters of various types.
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.                            - 17 -
  1061.  
  1062.  
  1063. _3._3_1._4.  _i_p _t_t_l [<_h_o_p_s>]
  1064.  
  1065. Display or set the time-to-live value placed in each outgoing  IP
  1066. datagram.   This  limits  the  number of switch hops the datagram
  1067. will be allowed to take. The idea is to bound the lifetime of the
  1068. packet  should  it  become  caught in a routing loop, so make the
  1069. value slightly larger than the number of hops across the  network
  1070. you expect to transit packets.  The default is set at compilation
  1071. time to the official recommended value for the Internet.
  1072.  
  1073. _3._3_2.  _i_s_a_t [_o_n | _o_f_f]
  1074.  
  1075. Display or set the AT flag.  Currently, there is no sure-fire way
  1076. to  determine  the  type of clock-chip being used.  If an AT type
  1077. clock is in use, this command will allow measurement of  time  in
  1078. milliseconds,  rather than clock ticks (55 milliseconds per clock
  1079. tick).
  1080.  
  1081. _3._3_2._1.  _k_i_c_k [<_s_e_s_s_i_o_n>]
  1082.  
  1083. Kick all sockets associated with a session;  if  no  argument  is
  1084. given,  kick  the current session.  Performs the same function as
  1085. the ax25 kick and tcp kick commands, but is easier to type.
  1086.  
  1087. _3._3_3.  _l_o_g [_s_t_o_p | <_f_i_l_e_n_a_m_e>]
  1088.  
  1089. Display or set the filename for logging server sessions. If  stop
  1090. is  given  as  the  argument,  logging is terminated (the servers
  1091. themselves are unaffected).  If a file name is given as an  argu-
  1092. ment, server session log entries will be appended to it.
  1093.  
  1094. _3._3_4.  _m_b_o_x
  1095.  
  1096. Display the status of the mailbox server system (if configured).
  1097.  
  1098. _3._3_5.  _m_e_m_o_r_y ...
  1099.  
  1100. These commands are used for memory allocation.
  1101.  
  1102. _3._3_5._1.  _m_e_m_o_r_y _f_r_e_e
  1103.  
  1104. Display the storage allocator free list. Each entry consists of a
  1105. starting address, in hex, and a size, in decimal bytes.
  1106.  
  1107. _3._3_5._2.  _m_e_m_o_r_y _s_i_z_e_s
  1108.  
  1109. Display a histogram of storage allocator request sizes. Each his-
  1110. togram bin is a binary order of magnitude (i.e., a factor of 2).
  1111.  
  1112. _3._3_5._3.  _m_e_m_o_r_y _s_t_a_t_u_s
  1113.  
  1114. Display a summary of storage allocator statistics. The first line
  1115. shows the base address of the heap, its total size, the amount of
  1116. heap memory available in bytes and as a percentage of  the  total
  1117.  
  1118.  
  1119.  
  1120. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.                            - 18 -
  1127.  
  1128.  
  1129. heap  size,  and the amount of memory left over (i.e., not placed
  1130. on the heap at startup) and therefore available for shell subcom-
  1131. mands.
  1132.  
  1133. The second line shows the total number of calls to  allocate  and
  1134. free  blocks of memory, the difference of these two values (i.e.,
  1135. the number of allocated blocks outstanding), the number of  allo-
  1136. cation  requests  that were denied due to lack of memory, and the
  1137. number of calls to free() that attempted to free garbage (eg.  by
  1138. freeing the same block twice or freeing a garbled pointer).
  1139.  
  1140. The third line shows the number of calls to malloc and free  that
  1141. occurred  with  interrupts off. In normal situations these values
  1142. should be zero.  The fourth line shows statistics for the special
  1143. pool of fixed-size buffers used to satisfy requests for memory at
  1144. interrupt time. The variables shown are  the  number  of  buffers
  1145. currently  in  the  pool,  their size, and the number of requests
  1146. that failed due to exhaustion of the pool.
  1147.  
  1148. _3._3_6.  _m_k_d_i_r <_d_i_r_n_a_m_e>
  1149.  
  1150. Create a sub-directory in the current working directory.
  1151.  
  1152. _3._3_7.  _m_o_d_e <_i_f_a_c_e> [_v_c | _d_a_t_a_g_r_a_m]
  1153.  
  1154. Control the default transmission  mode  on  the  specified  AX.25
  1155. interface. In datagram mode, IP packets are encapsulated in AX.25
  1156. UI frames and transmitted without any other  link  level  mechan-
  1157. isms, such as connections or acknowledgements.
  1158.  
  1159. In vc (virtual circuit) mode,  IP  packets  are  encapsulated  in
  1160. AX.25  I  frames and are acknowledged at the link level according
  1161. to the AX.25 protocol.  Link  level  connections  are  opened  if
  1162. necessary.
  1163.  
  1164. In both modes, ARP is used to map IP  to  AX.25  addresses.   The
  1165. defaults can be overridden with the type-of-service (TOS) bits in
  1166. the IP header. Turning on the "reliability" bit causes  I  frames
  1167. to  be used, while turning on the "low delay" bit uses UI frames.
  1168. (The effect of turning on both bits is undefined and  subject  to
  1169. change).
  1170.  
  1171. In both modes, IP-level fragmentation is done if the datagram  is
  1172. larger  than  the  interface  MTU.  In virtual circuit mode, how-
  1173. ever, the resulting datagram (or fragments) is further fragmented
  1174. at  the  AX.25  layer  if  it (or they) are still larger than the
  1175. AX.25 paclen parameter. In  AX.25  fragmentation,  datagrams  are
  1176. broken into several I frames and reassembled at the receiving end
  1177. before being passed to IP. This is preferable to IP fragmentation
  1178. whenever  possible  because  of decreased overhead (the IP header
  1179. isn't repeated in each fragment) and increased robustness (a lost
  1180. fragment is immediately retransmitted by the link layer).
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.                            - 19 -
  1193.  
  1194.  
  1195. _3._3_8.  _m_o_r_e <_f_i_l_e> [<_f_i_l_e> ...]
  1196.  
  1197. Display the specified file(s) a screen at a time. To  proceed  to
  1198. the  next screen, press the space bar; to cancel the display, hit
  1199. the 'q' key.  The more command creates a  session  that  you  can
  1200. suspend and resume just like any other session.
  1201.  
  1202. _3._3_9.  _p_a_r_a_m <_i_f_a_c_e> [<_p_a_r_a_m> ...]
  1203.  
  1204. Invoke a device-specific control routine.  On a KISS  TNC  inter-
  1205. face,  this  sends  control  packets  to the TNC.  Data bytes are
  1206. treated as decimal.  For example, param ax0 1 255  will  set  the
  1207. keyup timer (type field = 1) on the KISS TNC configured as ax0 to
  1208. 2.55 seconds (255 x .01 sec).  On a  SLIP  interface,  the  param
  1209. command  allows  the  baud rate to be read (without arguments) or
  1210. set.  The implementation of this command for the  various  inter-
  1211. face drivers is incomplete and subject to change.
  1212.  
  1213. _3._4_0.  _p_i_n_g <_h_o_s_t_i_d> [<_l_e_n_g_t_h> [<_s_e_c_o_n_d_s> [<_i_n_c_f_l_a_g>]]]
  1214.  
  1215. Ping (send ICMP Echo Request packets to) the specified  host.  By
  1216. default  the data field contains only a small timestamp to aid in
  1217. determining round trip time; if the optional length  argument  is
  1218. given,  the  appropriate  number of data bytes (consisting of hex
  1219. 55) are added to the ping packets.
  1220.  
  1221. If interval is specified, pings will be repeated indefinitely  at
  1222. the  specified  number of seconds; otherwise a single, "one shot"
  1223. ping is done.  Responses to one-shot pings appear  asynchronously
  1224. on the command screen, while repeated pings create a session that
  1225. may be suspended and resumed.  Pinging continues until  the  ses-
  1226. sion is manually reset.
  1227.  
  1228. The incflag option causes a repeated ping to increment the target
  1229. IP  address  for  each  ping;  it  is an experimental feature for
  1230. searching blocks of IP addresses for active hosts.
  1231.  
  1232. _3._4_1.  _p_p_p ...
  1233.  
  1234. These commands are used for Point to Point Protocol interfaces.
  1235.  
  1236. This implementation of PPP is designed to be as complete as  pos-
  1237. sible.   Because  of  this,  the  number of options can be rather
  1238. daunting.  However, a typical PPP configuration might include the
  1239. following commands:
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.                            - 20 -
  1259.  
  1260.  
  1261.  
  1262.         attach asy 0x3f8 4 ppp pp0 4096 1500 9600
  1263.         dial pp0 30 <hostid> 3 dialer.pp0
  1264.         #
  1265.         ppp pp0 lcp local accm 0
  1266.         ppp pp0 lcp local compress address on
  1267.         ppp pp0 lcp local compress protocol on
  1268.         ppp pp0 lcp local magic on
  1269.         ppp pp0 lcp open active
  1270.         #
  1271.         ppp pp0 ipcp local compress tcp 16 1
  1272.         ppp pp0 ipcp open active
  1273.         #
  1274.         route add default pp0
  1275.  
  1276.  
  1277. _3._4_1._1.  _p_p_p <_i_f_a_c_e>
  1278.  
  1279. Display the status of the PPP interface.
  1280.  
  1281. _3._4_1._2.  _p_p_p <_i_f_a_c_e> _l_c_p ...
  1282.  
  1283. These commands are used for the LCP [Link Control Protocol]  con-
  1284. figuration.
  1285.  
  1286. _3._4_1._2._1.  _p_p_p <_i_f_a_c_e> _l_c_p _c_l_o_s_e
  1287.  
  1288. Shutdown the PPP interface.
  1289.  
  1290. _3._4_1._2._2.  _p_p_p <_i_f_a_c_e> _l_c_p _l_o_c_a_l ...
  1291.  
  1292. These commands control the configuration of the local side of the
  1293. link.   If an option is specified, the parameters will be used as
  1294. the initial values in configuration requests.  If not  specified,
  1295. that option will not be requested.
  1296.  
  1297. For each of these options, the allow parameter  will  permit  the
  1298. remote  to  include  that  option  in its response, even when the
  1299. option is not included in the request.  By default,  all  options
  1300. are allowed.
  1301.  
  1302. _3._4_1._2._2._1.  _p_p_p <_i_f_a_c_e> _l_c_p _l_o_c_a_l _a_c_c_m [ <_b_i_t_m_a_p> | _a_l_l_o_w [_o_n  |
  1303. _o_f_f] ]
  1304.  
  1305. Display or set the Async Control Character Map.  The  default  is
  1306. 0xffffffff.
  1307.  
  1308. _3._4_1._2._2._2.  _p_p_p <_i_f_a_c_e> _l_c_p _l_o_c_a_l _a_u_t_h_e_n_t_i_c_a_t_e [ _p_a_p  |  _n_o_n_e  |
  1309. _a_l_l_o_w [_o_n | _o_f_f] ]
  1310.  
  1311. Display or set the authentication protocol.  The default is none.
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.                            - 21 -
  1325.  
  1326.  
  1327. _3._4_1._2._2._3.  _p_p_p <_i_f_a_c_e> _l_c_p _l_o_c_a_l _c_o_m_p_r_e_s_s _a_d_d_r_e_s_s/_c_o_n_t_r_o_l [  _o_n
  1328. | _o_f_f | _a_l_l_o_w [_o_n | _o_f_f] ]
  1329.  
  1330. Display or set the option to compress  the  address  and  control
  1331. fields  of the PPP HLDC-like header.  This is generally desirable
  1332. for slow asynchronous links, and undesirable for fast or synchro-
  1333. nous links.  The default is off.
  1334.  
  1335. _3._4_1._2._2._4.  _p_p_p <_i_f_a_c_e> _l_c_p _l_o_c_a_l _c_o_m_p_r_e_s_s _p_r_o_t_o_c_o_l [ _o_n | _o_f_f |
  1336. _a_l_l_o_w [_o_n | _o_f_f] ]
  1337.  
  1338. Display or set the option to compress the protocol field  of  the
  1339. PPP HLDC-like header.  This is generally desirable for slow asyn-
  1340. chronous links, and undesirable for fast  or  synchronous  links.
  1341. The default is off.
  1342.  
  1343. _3._4_1._2._2._5.  _p_p_p <_i_f_a_c_e> _l_c_p _l_o_c_a_l _m_a_g_i_c [ _o_n | _o_f_f |  <_v_a_l_u_e>  |
  1344. _a_l_l_o_w [_o_n | _o_f_f] ]
  1345.  
  1346. Display or set the initial Magic  Number.   The  default  is  off
  1347. (zero).
  1348.  
  1349. _3._4_1._2._2._6.  _p_p_p <_i_f_a_c_e> _l_c_p _l_o_c_a_l _m_r_u [ <_s_i_z_e>  |  _a_l_l_o_w  [_o_n  |
  1350. _o_f_f] ]
  1351.  
  1352. Display or set the Maximum Receive Unit.  The default is 1500.
  1353.  
  1354. _3._4_1._2._2._7.  _p_p_p <_i_f_a_c_e> _l_c_p _l_o_c_a_l _d_e_f_a_u_l_t
  1355.  
  1356. Reset the options to their default values.
  1357.  
  1358. _3._4_1._2._3.  _p_p_p <_i_f_a_c_e> _l_c_p _o_p_e_n _a_c_t_i_v_e | _p_a_s_s_i_v_e
  1359.  
  1360. Wait for the physical layer to come up.  If active, initiate con-
  1361. figuration negotiation.  If passive, wait for configuration nego-
  1362. tiation from the remote.
  1363.  
  1364. _3._4_1._2._4.  _p_p_p <_i_f_a_c_e> _l_c_p _r_e_m_o_t_e ...
  1365.  
  1366. These commands control the configuration of the  remote  side  of
  1367. the  link.  The options are identical to those of the local side.
  1368. If an option  is  specified,  the  parameters  will  be  used  in
  1369. responses  to the remote's configuration requests.  If not speci-
  1370. fied, that option will be accepted if it is allowed.
  1371.  
  1372. For each of these options, the allow parameter  will  permit  the
  1373. remote  to  specify  that option in its request.  By default, all
  1374. options are allowed.
  1375.  
  1376. _3._4_1._2._5.  _p_p_p <_i_f_a_c_e> _l_c_p _t_i_m_e_o_u_t [<_s_e_c_o_n_d_s>]
  1377.  
  1378. Display or set the interval to wait between configuration or ter-
  1379. mination attempts.  The default is 3 seconds.
  1380.  
  1381.  
  1382.  
  1383.  
  1384. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.                            - 22 -
  1391.  
  1392.  
  1393. _3._4_1._2._6.  _p_p_p <_i_f_a_c_e> _l_c_p _t_r_y ...
  1394.  
  1395. These commands are used for the various counters.
  1396.  
  1397. _3._4_1._2._6._1.  _p_p_p <_i_f_a_c_e> _l_c_p _t_r_y _c_o_n_f_i_g_u_r_e [<_c_o_u_n_t>]
  1398.  
  1399. Display or set the number of configuration  requests  sent.   The
  1400. default is 10.
  1401.  
  1402. _3._4_1._2._6._2.  _p_p_p <_i_f_a_c_e> _l_c_p _t_r_y _f_a_i_l_u_r_e [<_c_o_u_n_t>]
  1403.  
  1404. Display or set the number of bad configuration  requests  allowed
  1405. from the remote.  The default is 5.
  1406.  
  1407. _3._4_1._2._6._3.  _p_p_p <_i_f_a_c_e> _l_c_p _t_r_y _t_e_r_m_i_n_a_t_e [<_c_o_u_n_t>]
  1408.  
  1409. Display or set the number of  termination  requests  sent  before
  1410. shutdown.  The default is 2.
  1411.  
  1412. _3._4_1._3.  _p_p_p <_i_f_a_c_e> _i_p_c_p ...
  1413.  
  1414. These commands are used for the IPCP [Internet  Protocol  Control
  1415. Protocol] configuration.
  1416.  
  1417. The close, open, timeout and try sub-commands  are  identical  to
  1418. the LCP (described above).
  1419.  
  1420. _3._4_1._3._1.  _p_p_p <_i_f_a_c_e> _i_p_c_p _l_o_c_a_l ...
  1421.  
  1422. These commands control the configuration of the local side of the
  1423. link.   If an option is specified, the parameters will be used as
  1424. the initial values in configuration requests.  If not  specified,
  1425. that option will not be requested.
  1426.  
  1427. For each of these options, the allow parameter  will  permit  the
  1428. remote  to  include  that  option  in its response, even when the
  1429. option is not included in the request.  By default,  all  options
  1430. are allowed.
  1431.  
  1432. _3._4_1._3._1._1.  _p_p_p <_i_f_a_c_e> _i_p_c_p _l_o_c_a_l _a_d_d_r_e_s_s [  <_h_o_s_t_i_d>  |  _a_l_l_o_w
  1433. [_o_n | _o_f_f] ]
  1434.  
  1435. Display or set the local address for negotiation purposes.  If an
  1436. address of 0 is specified, the other side of the link will supply
  1437. the address.  By default, no addresses are negotiated.
  1438.  
  1439. _3._4_1._3._1._2.  _p_p_p  <_i_f_a_c_e>  _i_p_c_p  _l_o_c_a_l  _c_o_m_p_r_e_s_s  [  _t_c_p  <_s_l_o_t_s>
  1440. [<_f_l_a_g>] | _n_o_n_e | _a_l_l_o_w [_o_n | _o_f_f] ]
  1441.  
  1442. Display or set the compression protocol.  The default is none.
  1443.  
  1444. The tcp <slots> specifies the  number  of  "conversation"  slots,
  1445. which must be 1 to 255.  (This may be limited at compilation time
  1446. to a smaller number.) A good choice is in the range 4 to 16.
  1447.  
  1448.  
  1449.  
  1450. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.                            - 23 -
  1457.  
  1458.  
  1459. The tcp <flag> is 0 (don't compress the slot number) or 1 (OK  to
  1460. compress  the  slot  number).   KA9Q  can  handle compressed slot
  1461. numbers, so the default is 1.
  1462.  
  1463. _3._4_1._3._2.  _p_p_p <_i_f_a_c_e> _i_p_c_p _r_e_m_o_t_e ...
  1464.  
  1465. These commands control the configuration of the  remote  side  of
  1466. the  link.  The options are identical to those of the local side.
  1467. If an option  is  specified,  the  parameters  will  be  used  in
  1468. responses  to the remote's configuration requests.  If not speci-
  1469. fied, that option will be accepted if it is allowed.
  1470.  
  1471. For each of these options, the allow parameter  will  permit  the
  1472. remote  to  specify  that option in its request.  By default, all
  1473. options are allowed.
  1474.  
  1475. _3._4_1._4.  _p_p_p <_i_f_a_c_e> _p_a_p ...
  1476.  
  1477. These commands are used for the PAP [Password Authentication Pro-
  1478. tocol] configuration.
  1479.  
  1480. The timeout  and  try  sub-commands  are  identical  to  the  LCP
  1481. (described above).  However, the terminate counter is unused.
  1482.  
  1483. _3._4_1._4._1.  _p_p_p <_i_f_a_c_e> _p_a_p _u_s_e_r [ <_u_s_e_r_n_a_m_e> [<_p_a_s_s_w_o_r_d>] ]
  1484.  
  1485. Display or set the username (the password may  be  set,  but  not
  1486. displayed).   When  the username is specified, but no password is
  1487. supplied, the ftpusers file is searched for the password.  When a
  1488. username/password  is  unknown or rejected, a session will appear
  1489. at the console to prompt for a new username/password.
  1490.  
  1491. _3._4_1._5.  _p_p_p <_i_f_a_c_e> _t_r_a_c_e [<_f_l_a_g_s>]
  1492.  
  1493. Display or set the flags that control the logging of  information
  1494. during PPP link configuration.
  1495.  
  1496. The flag value is 0 for none, 1 for basic,  and  2  for  general.
  1497. Values greater than 2 are usually not compiled, and are described
  1498. in the appropriate source files where they are defined.
  1499.  
  1500. _3._4_2.  _p_s
  1501.  
  1502. Display all current processes in the system. The  fields  are  as
  1503. follows:
  1504.  
  1505. PID - Process ID (the address of the process descriptor).
  1506.  
  1507. SP - The current value of the process stack pointer.
  1508.  
  1509. stksize - The size of the stack allocated to the process.
  1510.  
  1511. maxstk - The apparent peak stack  utilization  of  this  process.
  1512. This  is  done  in  a  somewhat heuristic fashion, so the numbers
  1513.  
  1514.  
  1515.  
  1516. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.                            - 24 -
  1523.  
  1524.  
  1525. should be treated as  approximate.  If  this  number  reaches  or
  1526. exceeds  the  stksize  figure,  the  system  is almost certain to
  1527. crash; the net.exe program should be recompiled to give the  pro-
  1528. cess a larger allocation when it is started.
  1529.  
  1530. event - The event this task is waiting for, if it  is  not  runn-
  1531. able.
  1532.  
  1533. fl -  Process  status  flags.  There  are  three:  I  (Interrupts
  1534. enabled),  W (Waiting for event) and S (Suspended). The I flag is
  1535. set whenever a task has executed a pwait() call (wait for  event)
  1536. without first disabling hardware interrupts. Only tasks that wait
  1537. for hardware interrupt events will turn off this  flag;  this  is
  1538. done to avoid critical sections and missed interrupts. The W flag
  1539. indicates that the process is waiting for  an  event;  the  event
  1540. column will be non-blank. Note that although there may be several
  1541. runnable processes at any time (shown in the ps listing as  those
  1542. without  the W flag and with blank event fields) only one process
  1543. is actually running at any one instant  (The  Refrigerator  Light
  1544. Effect  says  that  the ps command is always the one running when
  1545. this display is generated.)
  1546.  
  1547. _3._4_3.  _p_w_d [<_d_i_r_n_a_m_e>]
  1548.  
  1549. An alias for the cd command.
  1550.  
  1551. _3._4_4.  _r_e_c_o_r_d [_o_f_f | <_f_i_l_e_n_a_m_e>]
  1552.  
  1553. Append to filename all data  received  on  the  current  session.
  1554. Data  sent  on  the current session is also written into the file
  1555. except for Telnet sessions in  remote  echo  mode.   The  command
  1556. record off stops recording and closes the file.
  1557.  
  1558. _3._4_5.  _r_e_m_o_t_e [-_p <_p_o_r_t>] [-_k  <_k_e_y>]  [-_a  <_k_i_c_k_a_d_d_r>]  <_h_o_s_t_i_d>
  1559. _e_x_i_t | _r_e_s_e_t | _k_i_c_k
  1560.  
  1561. Send a UDP packet to the specified host commanding it to exit the
  1562. net.exe  program,  reset the processor, or force a retransmission
  1563. on TCP connections.  For this command to be accepted, the  remote
  1564. system  must  be  running  the  remote server and the port number
  1565. specified in the remote command must match the port number  given
  1566. when  the  server  was started on the remote system.  If the port
  1567. numbers do not match, or if the remote server is not  running  on
  1568. the  target  system,  the command packet is ignored.  Even if the
  1569. command is accepted there is no acknowledgement.
  1570.  
  1571. The kick command forces a retransmission timeout on all TCP  con-
  1572. nections  that  the remote node may have with the local node.  If
  1573. the -a option is used, connections  to  the  specified  host  are
  1574. kicked instead. No key is required for the kick subcommand.
  1575.  
  1576. The exit and reset subcommands are mainly useful  for  restarting
  1577. the  net.exe program on a remote unattended system after the con-
  1578. figuration file has  been  updated.   The  remote  system  should
  1579.  
  1580.  
  1581.  
  1582. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.                            - 25 -
  1589.  
  1590.  
  1591. invoke the net.exe program automatically upon booting, preferably
  1592. in an infinite loop.  For example, under  MS-DOS  the  boot  disk
  1593. should contain the following in autoexec.net:
  1594.  
  1595.         :loop
  1596.         net
  1597.         goto :loop
  1598.  
  1599.  
  1600.  
  1601. _3._4_6.  _r_e_m_o_t_e -_s <_k_e_y>
  1602.  
  1603. The exit and reset subcommands of remote require a password.  The
  1604. password  is  set on a given system with the -s option, and it is
  1605. specified in a command to a remote system with the -k option.  If
  1606. no  password  is  set with the -s option, then the exit and reset
  1607. subcommands are disabled.
  1608.  
  1609. Note that remote is an experimental feature in NOS; it is _n_o_t yet
  1610. supported by any other TCP/IP implementation.
  1611.  
  1612. _3._4_7.  _r_e_n_a_m_e <_o_l_d_f_i_l_e_n_a_m_e> <_n_e_w_f_i_l_e_n_a_m_e>
  1613.  
  1614. Rename oldfilename to newfilename.
  1615.  
  1616. _3._4_8.  _r_e_s_e_t [<_s_e_s_s_i_o_n>]
  1617.  
  1618. Reset the specified session; if no argument is given,  reset  the
  1619. current  session.  This command should be used with caution since
  1620. it does not reliably inform the remote end that the connection no
  1621. longer  exists.   (In TCP a reset (RST) message will be automati-
  1622. cally generated should the remote TCP send anything after a local
  1623. reset  has been done.  In AX.25 the DM message performs a similar
  1624. role.  Both are used to get rid of a lingering half-open  connec-
  1625. tion after a remote system has crashed.)
  1626.  
  1627. _3._4_9.  _r_i_p ...
  1628.  
  1629. These commands are used for the RIP service.
  1630.  
  1631. _3._4_9._1.  _r_i_p _a_c_c_e_p_t <_g_a_t_e_w_a_y>
  1632.  
  1633. Remove the specified gateway from the RIP filter table,  allowing
  1634. future broadcasts from that gateway to be accepted.
  1635.  
  1636. _3._4_9._2.  _r_i_p _a_d_d <_h_o_s_t_i_d> <_s_e_c_o_n_d_s> [<_f_l_a_g_s>]
  1637.  
  1638. Add an entry to the RIP broadcast table.  The  IP  routing  table
  1639. will be sent to hostid every interval seconds. If flags is speci-
  1640. fied as 1, then "split horizon" processing will be performed  for
  1641. this  destination. That is, any IP routing table entries pointing
  1642. to the interface that will be used to send this  update  will  be
  1643. removed  from  the  update.   If  split horizon processing is not
  1644. specified, then all routing table  entries  except  those  marked
  1645.  
  1646.  
  1647.  
  1648. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.                            - 26 -
  1655.  
  1656.  
  1657. "private"  will  be  sent  in  each update.  (Private entries are
  1658. never sent in RIP packets).
  1659.  
  1660. Triggered updates are always done. That is,  any  change  in  the
  1661. routing  table  that causes a previously reachable destination to
  1662. become unreachable will trigger an  update  that  advertises  the
  1663. destination with metric 15, defined to mean "infinity".
  1664.  
  1665. Note that for RIP packets to be  sent  properly  to  a  broadcast
  1666. address,  there  must  exist  correct  IP  routing  and ARP table
  1667. entries that will first steer the broadcast to the correct inter-
  1668. face  and  then place the correct link-level broadcast address in
  1669. the link-level destination field.  If  a  standard  IP  broadcast
  1670. address  convention  is  used  (eg. 128.96.0.0 or 128.96.255.255)
  1671. then chances are you already have the necessary IP routing  table
  1672. entry,  but  unusual  subnet  or  cluster-addressed  networks may
  1673. require special attention.  However, an arp add command  will  be
  1674. required  to translate this address to the appropriate link level
  1675. broadcast address.  For example,
  1676.  
  1677.  
  1678. arp add 128.96.0.0 ethernet ff:ff:ff:ff:ff:ff
  1679.  
  1680.  
  1681. for an Ethernet network, and
  1682.  
  1683.  
  1684. arp add 44.255.255.255 ax25 qst-0
  1685.  
  1686.  
  1687. for an AX25 packet radio channel.
  1688.  
  1689. _3._4_9._3.  _r_i_p _d_r_o_p <_d_e_s_t>
  1690.  
  1691. Remove an entry from the RIP broadcast table.
  1692.  
  1693. _3._4_9._4.  _r_i_p _m_e_r_g_e [_o_n | _o_f_f]
  1694.  
  1695. This flag controls  an  experimental  feature  for  consolidating
  1696. redundant  entries  in  the IP routing table. When rip merging is
  1697. enabled, the table is scanned after processing each  RIP  update.
  1698. An entry is considered redundant if the target(s) it covers would
  1699. be routed identically by a less "specific" entry already  in  the
  1700. table.  That is, the target address(es) specified by the entry in
  1701. question must  also  match  the  target  addresses  of  the  less
  1702. specific  entry  and the two entries must have the same interface
  1703. and gateway fields. For example, if the routing table contains
  1704.  
  1705.  
  1706. Dest            Len Interface    Gateway          Metric  P Timer  Use
  1707. 1.2.3.4         32  ethernet0    128.96.1.2       1       0 0      0
  1708. 1.2.3           24  ethernet0    128.96.1.2       1       0 0      0
  1709.  
  1710.  
  1711.  
  1712.  
  1713.  
  1714. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1715.  
  1716.  
  1717.  
  1718.  
  1719.  
  1720.                            - 27 -
  1721.  
  1722.  
  1723. then the first entry would be deleted as redundant since  packets
  1724. sent  to  1.2.3.4  will  still  be routed correctly by the second
  1725. entry. Note that the relative metrics of the entries are ignored.
  1726.  
  1727. _3._4_9._5.  _r_i_p _r_e_f_u_s_e <_g_a_t_e_w_a_y>
  1728.  
  1729. Refuse to accept RIP updates from the specified gateway by adding
  1730. the gateway to the RIP filter table. It may be later removed with
  1731. the rip accept command.
  1732.  
  1733. _3._4_9._6.  _r_i_p _r_e_q_u_e_s_t <_g_a_t_e_w_a_y>
  1734.  
  1735. Send a RIP Request packet to the specified gateway, causing it to
  1736. reply with a RIP Response packet containing its routing table.
  1737.  
  1738. _3._4_9._7.  _r_i_p _s_t_a_t_u_s
  1739.  
  1740. Display RIP status, including a count of the  number  of  packets
  1741. sent  and  received,  the  number  of requests and responses, the
  1742. number of unknown RIP packet types, and the number of refused RIP
  1743. updates  from  hosts in the filter table. A list of the addresses
  1744. and intervals to which periodic RIP updates  are  being  sent  is
  1745. also shown, along with the contents of the filter table.
  1746.  
  1747. _3._4_9._8.  _r_i_p _t_r_a_c_e [_0 | _1 | _2]
  1748.  
  1749. This variable controls the tracing of incoming and  outgoing  RIP
  1750. packets.   Setting it to 0 disables all RIP tracing. A value of 1
  1751. causes changes in the routing table to be displayed, while  pack-
  1752. ets  that  cause no changes cause no output. Setting the variable
  1753. to 2 produces maximum output, including tracing  of  RIP  packets
  1754. that cause no change in the routing table.
  1755.  
  1756. _3._5_0.  _r_m_d_i_r <_d_i_r_n_a_m_e>
  1757.  
  1758. Remove a sub-directory from the current working directory.
  1759.  
  1760. _3._5_1.  _r_o_u_t_e
  1761.  
  1762. With no arguments, route displays the IP routing table.
  1763.  
  1764. _3._5_1._1.   _r_o_u_t_e  _a_d_d  <_d_e_s_t__h_o_s_t_i_d>[/_b_i_t_s]  |   _d_e_f_a_u_l_t   <_i_f_a_c_e>
  1765. [<_g_a_t_e_w_a_y__h_o_s_t_i_d> [<_m_e_t_r_i_c>]]
  1766.  
  1767. This command adds an entry to the routing table. It  requires  at
  1768. least  two  more  arguments, the hostid of the target destination
  1769. and the name of the interface to  which  its  packets  should  be
  1770. sent.   If  the  destination  is  not local, the gateway's hostid
  1771. should also be specified. (If the interface is  a  point-to-point
  1772. link,  then  gateway_hostid  may be omitted even if the target is
  1773. non-local because this  field  is  only  used  to  determine  the
  1774. gateway's  link  level  address,  if  any.  If the destination is
  1775. directly reachable, gateway_hostid is also unnecessary since  the
  1776. destination  address  is  used  to  determine  the interface link
  1777.  
  1778.  
  1779.  
  1780. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1781.  
  1782.  
  1783.  
  1784.  
  1785.  
  1786.                            - 28 -
  1787.  
  1788.  
  1789. address).
  1790.  
  1791. The optional /bits suffix to the destination  host  id  specifies
  1792. how  many leading bits in the host id are to be considered signi-
  1793. ficant in the routing comparisons.  If  not  specified,  32  bits
  1794. (i.e., full significance) is assumed.  With this option, a single
  1795. routing table entry may refer to many hosts all sharing a  common
  1796. bit  string prefix in their IP addresses. For example, ARPA Class
  1797. A, B and C networks would use suffixes of /8, /16 and /24 respec-
  1798. tively; the command
  1799.  
  1800. route add 44/8 sl0 44.64.0.2
  1801.  
  1802.  
  1803. causes any IP addresses beginning with "44" in the first  8  bits
  1804. to  be  routed  to  44.64.0.2;  the remaining 24 bits are "don't-
  1805. cares".
  1806.  
  1807. When an IP address to be routed matches more than  one  entry  in
  1808. the  routing  table, the entry with largest bits parameter (i.e.,
  1809. the "best" match) is used. This allows individual hosts or blocks
  1810. of  hosts  to  be  exceptions to a more general rule for a larger
  1811. block of hosts.
  1812.  
  1813. The special destination default is used  to  route  datagrams  to
  1814. addresses  not matched by any other entries in the routing table;
  1815. it is equivalent to specifying a /bits suffix of /0 to any desti-
  1816. nation hostid.  Care must be taken with default entries since two
  1817. nodes with default entries pointing  at  each  other  will  route
  1818. packets to unknown addresses back and forth in a loop until their
  1819. time-to-live (TTL) fields expire.  (Routing  loops  for  specific
  1820. addresses  can  also be created, but this is less likely to occur
  1821. accidentally).
  1822.  
  1823. Here are some examples of the route command:
  1824.  
  1825. # Route datagrams to IP address 44.0.0.3 to SLIP line #0.
  1826. # No gateway is needed because SLIP is point-to point.
  1827. route add 44.0.0.3 sl0
  1828.  
  1829. # Route all default traffic to the gateway on the local Ethernet
  1830. # with IP address 44.0.0.1
  1831. route add default ec0 44.0.0.1
  1832.  
  1833. # The local Ethernet has an ARPA Class-C address assignment;
  1834. # route all IP addresses beginning with 192.4.8 to it
  1835. route add 192.4.8/24 ec0
  1836.  
  1837. # The station with IP address 44.0.0.10 is on the local AX.25 channel
  1838. route add 44.0.0.10 ax0
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.                            - 29 -
  1853.  
  1854.  
  1855. _3._5_1._2.  _r_o_u_t_e _a_d_d_p_r_i_v_a_t_e <_d_e_s_t _h_o_s_t_i_d>[/_b_i_t_s] | _d_e_f_a_u_l_t  <_i_f_a_c_e>
  1856. [<_g_a_t_e_w_a_y _h_o_s_t_i_d> [<_m_e_t_r_i_c>]]
  1857.  
  1858. This command is identical to route add except that it also  marks
  1859. the  new  entry as private; it will never be included in outgoing
  1860. RIP updates.
  1861.  
  1862. _3._5_1._3.  _r_o_u_t_e _d_r_o_p <_d_e_s_t _h_o_s_t_i_d>
  1863.  
  1864. route drop deletes an entry from the table. If a  packet  arrives
  1865. for the deleted address and a default route is in effect, it will
  1866. be used.
  1867.  
  1868. _3._5_2.  _s_e_s_s_i_o_n [<_s_e_s_s_i_o_n #>]
  1869.  
  1870. Without arguments, displays the list of current sessions, includ-
  1871. ing  session  number, remote TCP or AX.25 address and the address
  1872. of the TCP or AX.25 control block.  An asterisk (*) is shown next
  1873. to  the current session; entering a blank line at this point puts
  1874. you in converse mode  with  that  session.   Entering  a  session
  1875. number as an argument to the session command will put you in _c_o_n_-
  1876. _v_e_r_s_e mode with that session.  If the Telnet server  is  enabled,
  1877. the  user is notified of an incoming request and a session number
  1878. is automatically assigned.  The user may then select the  session
  1879. normally  to  converse with the remote user as though the session
  1880. had been locally initiated.
  1881.  
  1882. _3._5_3.  _s_h_e_l_l
  1883.  
  1884. Suspends net.exe and executes a  sub-shell  ("command  processor"
  1885. under  MS-DOS).  When the sub-shell exits, net.exe resumes (under
  1886. MS-DOS,  enter  the  exit  command).   Background  activity  (FTP
  1887. servers, etc) is also suspended while the subshell executes. Note
  1888. that this will fail unless there is sufficient unused memory  for
  1889. the sub-shell and whatever command the user tries to run.
  1890.  
  1891. _3._5_4.  _s_m_t_p ...
  1892.  
  1893. These commands are used for the Simple Message Transport Protocol
  1894. service (that is, mail).
  1895.  
  1896. _3._5_4._1.  _s_m_t_p _g_a_t_e_w_a_y [<_h_o_s_t_i_d>]
  1897.  
  1898. Displays or sets the host to be used as a "smart" mail relay. Any
  1899. mail sent to a host not in the host table will instead be sent to
  1900. the gateway for forwarding.
  1901.  
  1902. _3._5_4._2.  _s_m_t_p _k_i_c_k
  1903.  
  1904. Run through the outgoing mail queue and attempt  to  deliver  any
  1905. pending  mail.   This  command allows the user to "kick" the mail
  1906. system manually.  Normally, this command is periodically  invoked
  1907. by a timer whenever net.exe is running.
  1908.  
  1909.  
  1910.  
  1911.  
  1912. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1913.  
  1914.  
  1915.  
  1916.  
  1917.  
  1918.                            - 30 -
  1919.  
  1920.  
  1921. _3._5_4._3.  _s_m_t_p _m_a_x_c_l_i_e_n_t_s [<_c_o_u_n_t>]
  1922.  
  1923. Displays or sets the maximum number of simultaneous outgoing SMTP
  1924. sessions  that  will  be allowed. The default is 10; reduce it if
  1925. network congestion is a problem.
  1926.  
  1927. _3._5_4._4.  _s_m_t_p _t_i_m_e_r [<_s_e_c_o_n_d_s>]
  1928.  
  1929. Displays or sets the interval between scans of the outbound  mail
  1930. queue. For example, smtp timer 600 will cause the system to check
  1931. for outgoing mail every 10 minutes and attempt  to  deliver  any-
  1932. thing  it  finds, subject of course to the smtp maxclients limit.
  1933. Setting a value of zero disables queue scanning altogether,  note
  1934. that  this  is  the default!  This value is recommended for stand
  1935. alone IP gateways that never handle mail, since it saves wear and
  1936. tear on the floppy disk drive.
  1937.  
  1938. _3._5_4._5.  _s_m_t_p _t_r_a_c_e [<_v_a_l_u_e>]
  1939.  
  1940. Displays or sets the trace flag in the SMTP client, allowing  you
  1941. to  watch  SMTP's  conversations  as it delivers mail.  Zero (the
  1942. default) disables tracing.
  1943.  
  1944. _3._5_5.  _s_o_c_k_e_t [<_s_o_c_k_e_t #>]
  1945.  
  1946. Without an argument, displays all active  sockets,  giving  their
  1947. index  and  type,  the address of the associated protocol control
  1948. block and the and owner process ID and name. If the index  to  an
  1949. active socket is supplied, the status display for the appropriate
  1950. protocol is called.  For example, if the socket refers to  a  TCP
  1951. connection, the display will be that given by the tcp status com-
  1952. mand with the protocol control block address.
  1953.  
  1954. _3._5_6.  _s_t_a_r_t _a_x_2_5 | _d_i_s_c_a_r_d | _e_c_h_o | _f_t_p | _n_e_t_r_o_m | _r_e_m_o_t_e | _s_m_t_p
  1955. | _t_e_l_n_e_t | _t_t_y_l_i_n_k
  1956.  
  1957. Start the specified Internet server, allowing  remote  connection
  1958. requests.
  1959.  
  1960. _3._5_7.  _s_t_o_p _a_x_2_5 | _d_i_s_c_a_r_d | _e_c_h_o | _f_t_p | _n_e_t_r_o_m | _r_e_m_o_t_e |  _s_m_t_p
  1961. | _t_e_l_n_e_t | _t_t_y_l_i_n_k
  1962.  
  1963. Stop the specified Internet server, rejecting any further  remote
  1964. connect  requests.  Existing  connections are allowed to complete
  1965. normally.
  1966.  
  1967. _3._5_8.  _t_c_p ...
  1968.  
  1969. These commands are used for  the  Transmission  Control  Protocol
  1970. service.
  1971.  
  1972. _3._5_8._1.  _t_c_p _i_r_t_t [<_m_i_l_l_i_s_e_c_o_n_d_s>]
  1973.  
  1974. Display  or  set  the  initial  round  trip  time  estimate,   in
  1975.  
  1976.  
  1977.  
  1978. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.                            - 31 -
  1985.  
  1986.  
  1987. milliseconds,  to  be used for new TCP connections until they can
  1988. measure and adapt to the actual value.  The default is 5000  mil-
  1989. liseconds  (5 seconds).  Increasing this when operating over slow
  1990. channels will avoid the flurry of retransmissions that would oth-
  1991. erwise occur as the smoothed estimate settles down at the correct
  1992. value. Note that this command should be given before servers  are
  1993. started in order for it to have effect on incoming connections.
  1994.  
  1995. TCP also keeps a _c_a_c_h_e of measured  round  trip  times  and  mean
  1996. deviations (MDEV) for current and recent destinations. Whenever a
  1997. new TCP connection is opened, the  system  first  looks  in  this
  1998. cache.  If  the  destination  is  found, the cached IRTT and MDEV
  1999. values are used. If not, the default IRTT value  mentioned  above
  2000. is  used,  along  with  a  MDEV  of  0.   This  feature  is fully
  2001. automatic, and it can improve performance greatly when  a  series
  2002. of  connections are opened and closed to a given destination (eg.
  2003. a series of FTP file transfers or directory listings).
  2004.  
  2005. _3._5_8._2.  _t_c_p _k_i_c_k <_t_c_b__a_d_d_r>
  2006.  
  2007. If there is unacknowledged data on the send queue of  the  speci-
  2008. fied TCB, this command forces an immediate retransmission.
  2009.  
  2010. _3._5_8._3.  _t_c_p _m_s_s [<_s_i_z_e>]
  2011.  
  2012. Display or set the TCP Maximum Segment Size in bytes that will be
  2013. sent  on  all  outgoing TCP connect request (SYN segments).  This
  2014. tells the remote end the size of the largest segment (packet)  it
  2015. may  send. Changing MSS affects only future connections; existing
  2016. connections are unaffected.
  2017.  
  2018. _3._5_8._4.  _t_c_p _r_e_s_e_t <_t_c_b__a_d_d_r>
  2019.  
  2020. Deletes the TCP control block at the specified address.
  2021.  
  2022. _3._5_8._5.  _t_c_p _r_t_t <_t_c_b__a_d_d_r> <_m_i_l_l_i_s_e_c_o_n_d_s>
  2023.  
  2024. Replaces the automatically computed round trip time in the speci-
  2025. fied TCB with the rtt in milliseconds.  This command is useful to
  2026. speed up recovery from a series of lost packets since it provides
  2027. a  manual  bypass around the normal backoff retransmission timing
  2028. mechanisms.
  2029.  
  2030. _3._5_8._6.  _t_c_p _s_t_a_t_u_s [<_t_c_b__a_d_d_r>]
  2031.  
  2032. Without arguments, displays several TCP-level statistics, plus  a
  2033. summary  of  all existing TCP connections, including TCB address,
  2034. send and receive queue sizes, local and remote sockets, and  con-
  2035. nection  state. If tcb_addr is specified, a more detailed dump of
  2036. the specified  TCB  is  generated,  including  send  and  receive
  2037. sequence numbers and timer information.
  2038.  
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.                            - 32 -
  2051.  
  2052.  
  2053. _3._5_8._7.  _t_c_p _w_i_n_d_o_w [<_s_i_z_e>]
  2054.  
  2055. Displays or sets the default receive window size in bytes  to  be
  2056. used  by  TCP when creating new connections. Existing connections
  2057. are unaffected.
  2058.  
  2059. _3._5_9.  _t_e_l_n_e_t <_h_o_s_t_i_d>
  2060.  
  2061. Creates a Telnet session to the specified host  and  enters  con-
  2062. verse mode.
  2063.  
  2064. _3._6_0.  _t_i_p <_i_f_a_c_e>
  2065.  
  2066. Creates a tip session that connects to the specified interface in
  2067. "dumb  terminal"  mode.   The  interface  must  have already been
  2068. attached  with  the  attach  command.   Any  packet  traffic  (IP
  2069. datagrams, etc) routed to the interface while this session exists
  2070. will be discarded.  To close a tip session, use  the  reset  com-
  2071. mand. It will then revert to normal slip, nrs or kiss mode opera-
  2072. tion.
  2073.  
  2074. This feature is primarily useful for manually  establishing  SLIP
  2075. connections.   At  present,  only the built-in "com" ports can be
  2076. used with this command.
  2077.  
  2078. _3._6_1.  _t_r_a_c_e [<_i_f_a_c_e> [_o_f_f | <_b_t_i_o> [<_t_r_a_c_e_f_i_l_e>]]]
  2079.  
  2080. Controls packet tracing by the interface drivers.  Specific  bits
  2081. enable tracing of the various interfaces and the amount of infor-
  2082. mation produced.  Tracing is controlled on a per-interface basis;
  2083. without  arguments,  trace gives a list of all defined interfaces
  2084. and their tracing status.  Output can  be  limited  to  a  single
  2085. interface  by  specifying it, and the control flags can be change
  2086. by specifying them as well. The flags are given as a  hexadecimal
  2087. number which is interpreted as follows:
  2088.  
  2089.     O - Enable tracing of output packets if 1, disable if 0
  2090.     I - Enable tracing of input packets if 1, disable if 0
  2091.     T - Controls type of tracing:
  2092.         0 - Protocol headers are decoded, but data is not displayed
  2093.         1 - Protocol headers are decoded, and data (but not the
  2094.             headers themselves) are displayed as ASCII characters,
  2095.             64 characters/line. Unprintable characters are displayed
  2096.             as periods.
  2097.         2 - Protocol headers are decoded, and the entire packet
  2098.             (headers AND data) is also displayed in hexadecimal
  2099.             and ASCII, 16 characters per line.
  2100.     B - Broadcast filter flag. If set, only packets specifically addressed
  2101.         to this node will be traced; broadcast packets will not be displayed.
  2102.  
  2103. If tracefile is not specified, tracing will be to the console.
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.                            - 33 -
  2117.  
  2118.  
  2119. _3._6_2.  _u_d_p _s_t_a_t_u_s
  2120.  
  2121. Displays the status of all UDP receive queues.
  2122.  
  2123. _3._6_3.  _u_p_l_o_a_d [<_f_i_l_e_n_a_m_e>]
  2124.  
  2125. Opens filename and sends it on the current session as  though  it
  2126. were typed on the terminal.
  2127.  
  2128. _3._6_4.  _w_a_t_c_h
  2129.  
  2130. Displays the current software stopwatch values, with min and  max
  2131. readings  for  each. This facility allows a programmer to measure
  2132. the execution time of critical sections of code with  microsecond
  2133. resolution.   This  command  is supported only on the IBM PC, and
  2134. the meaning of each stopwatch value depends on  where  the  calls
  2135. have  been  inserted  for test purposes; the distribution copy of
  2136. net.exe usually has no stopwatch calls.
  2137.  
  2138. _3._6_5.  ?
  2139.  
  2140. Same as the help command.
  2141.  
  2142.  
  2143.  
  2144.  
  2145.  
  2146.  
  2147.  
  2148.  
  2149.  
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.  
  2156.  
  2157.  
  2158.  
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.                            - 34 -
  2183.  
  2184.  
  2185. _4.  _A_t_t_a_c_h _C_o_m_m_a_n_d_s
  2186.  
  2187. This chapter details the attach commands for the various hardware
  2188. interface  drivers.  Not  all  of these drivers may be configured
  2189. into every net.exe binary; a list of the available types  may  be
  2190. obtained by entering the command attach ?.
  2191.  
  2192. Some parameters are accepted by several drivers. They are:
  2193.  
  2194. _4._0._1.  <_b_u_f_s_i_z_e>
  2195.  
  2196. For asynchronous devices (eg. COM ports operating in SLIP or  NRS
  2197. mode)  this  parameter  specifies the size of the receiver's ring
  2198. buffer.  It should be large enough to hold incoming data at  full
  2199. line  speed  for  the longest time that the system may be busy in
  2200. MS-DOS or the BIOS doing a slow I/O operation (eg.  to  a  floppy
  2201. disk). A kilobyte is usually more than sufficient.
  2202.  
  2203. For synchronous devices (eg. the scc, hs, pc100,  hapn  and  drsi
  2204. interfaces  operating in HDLC mode), the bufsize parameter speci-
  2205. fies the largest packet that may be received  on  the  interface.
  2206. This should be set by mutual agreement among stations sharing the
  2207. channel. For standard AX.25 with a maximum I-frame data  size  of
  2208. 256  bytes, a value of 325 should provide an adequate safety mar-
  2209. gin. On higher speed channels (eg. 56kb/s) larger values (eg.  2K
  2210. bytes)  will provide much better performance and allow full-sized
  2211. Ethernet packets to be carried without fragmentation.
  2212.  
  2213. _4._0._2.  <_i_o_a_d_d_r>
  2214.  
  2215. The base address of the interface's control registers, in hex.
  2216.  
  2217. _4._0._3.  <_v_e_c_t_o_r>
  2218.  
  2219. The interface's hardware interrupt (IRQ) vector, in hex.
  2220.  
  2221. _4._0._4.  <_i_f_a_c_e>
  2222.  
  2223. The name (an arbitrary character string) to be assigned  to  this
  2224. interface.  It  is used to refer to the interface in ifconfig and
  2225. route commands and in trace output.
  2226.  
  2227. _4._0._5.  <_m_t_u>
  2228.  
  2229. The Maximum Transmission Unit size, in bytes.   Datagrams  larger
  2230. than  this  limit will be fragmented at the IP layer into smaller
  2231. pieces. For AX.25 UI frames, this limits the size of the informa-
  2232. tion field.  For AX.25 I frames, however, the ax25 paclen parame-
  2233. ter is also relevant.  If  the  datagram  or  fragment  is  still
  2234. larger  than paclen, it is also fragmented at the AX.25 level (as
  2235. opposed to the IP level)  before  transmission.   (See  the  ax25
  2236. paclen command for further information).
  2237.  
  2238.  
  2239.  
  2240.  
  2241.  
  2242. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.                            - 35 -
  2249.  
  2250.  
  2251. _4._0._6.  <_s_p_e_e_d>
  2252.  
  2253. The speed in bits per second (eg. 2400).
  2254.  
  2255. _4._1.  _a_t_t_a_c_h _3_c_5_0_0 <_i_o_a_d_d_r> <_v_e_c_t_o_r> _a_r_p_a  <_i_f_a_c_e>  <_q_l_e_n>  <_m_t_u>
  2256. [<_i_p__a_d_d_r>]
  2257.  
  2258. Attach a 3Com 3C501 Ethernet  interface.   qlen  is  the  maximum
  2259. allowable transmit queue length.  If the ip_addr parameter is not
  2260. given, the value associated with a prior ip address command  will
  2261. be used.
  2262.  
  2263. The use of this driver is not recommended; use the packet  driver
  2264. interface with the loadable 3C501 packet driver instead.
  2265.  
  2266. _4._2.  _a_t_t_a_c_h _a_s_y <_i_o_a_d_d_r> <_v_e_c_t_o_r>  _a_x_2_5  |  _n_r_s  |  _p_p_p  |  _s_l_i_p
  2267. <_i_f_a_c_e> <_b_u_f_s_i_z_e> <_m_t_u> <_s_p_e_e_d> [<_c_r_v>]
  2268.  
  2269. Attach a standard PC "com port" (asynchronous serial port), using
  2270. the  National 8250 or 16550A chip.  Standard values on the IBM PC
  2271. and clones for ioaddr and vector are 0x3f8 and 4  for  COM1,  and
  2272. 0x2f8 and 3 for COM2.  If the port uses a 16550A chip, it will be
  2273. detected automatically and the FIFOs enabled.
  2274.  
  2275. _4._2._1.  _a_x_2_5
  2276.  
  2277. Similar to slip, except that an AX.25 header and a KISS TNC  con-
  2278. trol  header  are  added to the front of the datagram before SLIP
  2279. encoding.  Either UI (connectionless) or I  (connection-oriented)
  2280. AX.25 frames can be used; see the mode command for details.
  2281.  
  2282. _4._2._2.  _n_r_s
  2283.  
  2284. Use the NET/ROM asynchronous framing technique for  communication
  2285. with a local NET/ROM TNC.
  2286.  
  2287. _4._2._3.  _p_p_p
  2288.  
  2289. Point-to-Point-Protocol.  Encapsulates datagrams in an  HDLC-like
  2290. frame.   This  is a new Internet standard for point-to-point com-
  2291. munication, compatible with CCITT standards.
  2292.  
  2293. _4._2._4.  _s_l_i_p
  2294.  
  2295. Serial  Line  Internet  Protocol.   Encapsulates   IP   datagrams
  2296. directly in SLIP frames without a link header. This is for opera-
  2297. tion on point-to-point lines and is compatible with  4.2BSD  UNIX
  2298. SLIP.
  2299.  
  2300. _4._2._5.  <_c_r_v>
  2301.  
  2302. The optional flags are a string of characters  "crv":  c  enables
  2303. RTS/CTS  detection, r enables RLSD (Carrier Detect) physical line
  2304. sensing, v enables Van Jacobson TCP/IP Header Compression, and is
  2305.  
  2306.  
  2307.  
  2308. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.                            - 36 -
  2315.  
  2316.  
  2317. valid only for SLIP.
  2318.  
  2319. _4._3.  _a_t_t_a_c_h _d_r_s_i <_i_o_a_d_d_r> <_v_e_c_t_o_r> _a_x_2_5 <_i_f_a_c_e> <_b_u_f_s_i_z_e>  <_m_t_u>
  2320. <_c_h__a__s_p_e_e_d> <_c_h__b__s_p_e_e_d>
  2321.  
  2322. N6TTO driver for the Digital Radio Systems PCPA 8530 card.  Since
  2323. there are two channels on the board, two interfaces are attached.
  2324. They will be named iface with 'a' and 'b' appended.   bufsize  is
  2325. the  receiver  buffer  size  in bytes; it must be larger than the
  2326. largest frame to be received.  ch_a_speed and ch_b_speed are  the
  2327. speeds, in bits/sec, for the A and B channels, respectively.
  2328.  
  2329. _4._4.  _a_t_t_a_c_h _e_a_g_l_e <_i_o_a_d_d_r> <_v_e_c_t_o_r> _a_x_2_5 <_i_f_a_c_e> <_b_u_f_s_i_z_e> <_m_t_u>
  2330. <_s_p_e_e_d>
  2331.  
  2332. WA3CVG/NG6Q driver for the Eagle Computer card (Zilog 8530).
  2333.  
  2334. _4._5.  _a_t_t_a_c_h _h_a_p_n <_i_o_a_d_d_r> <_v_e_c_t_o_r> _a_x_2_5 <_i_f_a_c_e> <_b_u_f_s_i_z_e>  <_m_t_u>
  2335. _c_s_m_a | _f_u_l_l
  2336.  
  2337. KE3Z driver for  the  Hamilton  Amateur  Packet  Network  adapter
  2338. (Intel  8273).   The  csma | full parameter specifies whether the
  2339. port should operate in carrier sense multiple access (CSMA)  mode
  2340. or in full duplex.
  2341.  
  2342. _4._6.  _a_t_t_a_c_h _h_s <_i_o_a_d_d_r> <_v_e_c_t_o_r> _a_x_2_5  <_i_f_a_c_e>  <_b_u_f_s_i_z_e>  <_m_t_u>
  2343. <_k_e_y_u_p__d_e_l_a_y> <_p>
  2344.  
  2345. Attach a DRSI PCPA or Eagle Computer interface card using a  spe-
  2346. cial  "high speed" 8530 driver.  This driver uses busy-wait loops
  2347. to send and receive each byte instead of  interrupts,  making  it
  2348. usable  with  high speed modems (such as the WA4DSY 56kb/s modem)
  2349. on slow systems.  This does have the side  effect  of  "freezing"
  2350. the  system whenever the modem transmitter or receiver is active.
  2351. This driver can operate only in CSMA mode, and it is  recommended
  2352. that  no  other interfaces requiring small interrupt latencies be
  2353. attached to the same machine.
  2354.  
  2355. The keyup_delay parameter specifies the transmitter  keyup  delay
  2356. in  byte  time  intervals.  The p value specifies the transmitter
  2357. persistence value in the range 1-255; the corresponding slot time
  2358. is fixed at one hardware clock tick, about 55 ms on the PC.
  2359.  
  2360. As with the other 8530 drivers, this driver actually attaches two
  2361. interfaces, one for each 8530 channel.
  2362.  
  2363. _4._7.  _a_t_t_a_c_h _p_a_c_k_e_t <_i_n_t_v_e_c> <_i_f_a_c_e> <_t_x_q_l_e_n> <_m_t_u>
  2364.  
  2365. Driver for use with separate software  "packet  drivers"  meeting
  2366. the FTP Software, Inc, Software Packet Driver specification.  The
  2367. driver must have already been installed before the attach command
  2368. is given. Packet drivers in the Ethernet, ARCNET, SLIP, SLFP, and
  2369. KISS/AX25 classes are supported.
  2370.  
  2371.  
  2372.  
  2373.  
  2374. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.                            - 37 -
  2381.  
  2382.  
  2383. intvec is the software interrupt vector used for communication to
  2384. the  packet  driver,  and txqlen is the maximum number of packets
  2385. that will be allowed on the transmit queue.
  2386.  
  2387. _4._8.  _a_t_t_a_c_h  _p_c_1_0_0  <_i_o_a_d_d_r>  <_v_e_c_t_o_r>  _a_x_2_5  <_i_f_a_c_e>  <_b_u_f_s_i_z_e>
  2388. <_s_p_e_e_d>
  2389.  
  2390. Driver for the PACCOMM PC-100  (Zilog  8530)  card.   Only  AX.25
  2391. operation is supported.
  2392.  
  2393. _4._9.  _a_t_t_a_c_h _s_c_c <_d_e_v_i_c_e_s> _i_n_i_t <_a_d_d_r>  <_s_p_a_c_i_n_g>  <_A_o_f_f>  <_B_o_f_f>
  2394. <_D_a_t_a_o_f_f> <_i_n_t_a_c_k> <_v_e_c> [_p|_r]<_c_l_o_c_k> [<_h_d_w_e>] [<_p_a_r_a_m>]
  2395.  
  2396. PE1CHL driver to initialize a generic SCC (8530) interface  board
  2397. prior to actually attaching it. The parameters are as follows:
  2398.  
  2399. _4._9._1.  <_d_e_v_i_c_e_s>
  2400.  
  2401. The number of SCC chips to support.
  2402.  
  2403. _4._9._2.  <_a_d_d_r>
  2404.  
  2405. The base address of the first SCC chip (hex).
  2406.  
  2407. _4._9._3.  <_s_p_a_c_i_n_g>
  2408.  
  2409. The spacing between the SCC chip base addresses.
  2410.  
  2411. _4._9._4.  <_A_o_f_f>
  2412.  
  2413. The offset from a chip's base address to its  channel  A  control
  2414. register.
  2415.  
  2416. _4._9._5.  <_B_o_f_f>
  2417.  
  2418. The offset from a chip's base address to its  channel  B  control
  2419. register.
  2420.  
  2421. _4._9._6.  <_D_a_t_a_o_f_f>
  2422.  
  2423. The offset from each  channel's  control  register  to  its  data
  2424. register.
  2425.  
  2426. _4._9._7.  <_i_n_t_a_c_k>
  2427.  
  2428. The address of the INTACK/Read Vector port. If none, specify 0 to
  2429. read from RR3A/RR2B.
  2430.  
  2431. _4._9._8.  <_v_e_c>
  2432.  
  2433. The CPU interrupt vector for all connected SCCs.
  2434.  
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2441.  
  2442.  
  2443.  
  2444.  
  2445.  
  2446.                            - 38 -
  2447.  
  2448.  
  2449. _4._9._9.  <_c_l_o_c_k>
  2450.  
  2451. The clock frequency (PCLK/RTxC) of all  SCCs  in  hertz.   Prefix
  2452. with 'p' for PCLK, 'r' for RTxC clock (for baudrate gen).
  2453.  
  2454. _4._9._1_0.  <_h_d_w_e>
  2455.  
  2456. Optional hardware type. The following values are  currently  sup-
  2457. ported:  1  -  Eagle card, 2 - PACCOMM PC-100, 4 - PRIMUS-PC card
  2458. (DG9BL), 8 - DRSI PCPA card.
  2459.  
  2460. _4._9._1_1.  <_p_a_r_a_m>
  2461.  
  2462. Optional extra parameter. At present, this is used only with  the
  2463. PC-100  and PRIMUS-PC cards to set the modem mode. The value 0x22
  2464. is used with the PC-100 and 0x2 is used with the PRIMUS-PC card.
  2465.  
  2466. The attach scc ... init command must be given before  the  inter-
  2467. faces are actually attached with the following command.
  2468.  
  2469. _4._1_0.  _a_t_t_a_c_h _s_c_c <_c_h_a_n> _s_l_i_p | _k_i_s_s | _n_r_s | _a_x_2_5  <_i_f_a_c_e>  <_m_t_u>
  2470. <_s_p_e_e_d> <_b_u_f_s_i_z_e> [<_c_a_l_l>]
  2471.  
  2472. Attach an initialized SCC port to the system. The parameters  are
  2473. as follows:
  2474.  
  2475. _4._1_0._1.  <_c_h_a_n>
  2476.  
  2477. The SCC channel number to attach, 0 or 1 for the first  chip's  A
  2478. or B port, 2 or 3 for the second chip's A or B port, etc.
  2479.  
  2480. _4._1_0._2.  _s_l_i_p | _k_i_s_s | _n_r_s | _a_x_2_5
  2481.  
  2482. The operating mode of the  interface.  slip,  kiss  and  nrs  all
  2483. operate   the   port  hardware  in  asynchronous  mode;  slip  is
  2484. Internet-standard serial line IP mode, kiss generates SLIP frames
  2485. containing  KISS  TNC  commands  and  AX.25  packets and nrs uses
  2486. NET/ROM local serial link framing conventions  to  carry  NET/ROM
  2487. packets.  Selecting ax25 mode puts the interface into synchronous
  2488. HDLC mode that is suitable for direct connection to a half duplex
  2489. radio modem.
  2490.  
  2491. _4._1_0._3.  <_s_p_e_e_d>
  2492.  
  2493. The interface speed in bits per second (eg. 1200).   Prefix  with
  2494. 'd'  when  an  external  divider  is available to generate the TX
  2495. clock. When the clock source is PCLK, this can be a  /32  divider
  2496. between  TRxC  and  RTxC.  When the clock is at RTxC, the TX rate
  2497. must be supplied at TRxC. This is needed  only  for  full  duplex
  2498. synchronous  operation.  When  this  arg  is  given as 'ext', the
  2499. transmit and receive clocks are external, and the  internal  baud
  2500. rate generator (BRG) and digital phase locked loop (DPLL) are not
  2501. used.
  2502.  
  2503.  
  2504.  
  2505.  
  2506. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2507.  
  2508.  
  2509.  
  2510.  
  2511.  
  2512.                            - 39 -
  2513.  
  2514.  
  2515. _4._1_1.  _A_t_t_a_c_h _E_x_a_m_p_l_e_s
  2516.  
  2517. Here are some examples of the attach command:
  2518.  
  2519.  
  2520. # Attach a 3Com Ethernet controller using the standard 3Com address and
  2521. # vector (i.e., as it comes out of the box) to use ARPA-standard encapsulation.
  2522. # The receive queue is limited to 5 packets, and outgoing packets larger
  2523. # than 1500 bytes will be fragmented
  2524. attach 3c500 0x300 3 arpa ec0 5 1500
  2525.  
  2526. # Attach the PC asynch card normally known as "com1" (the first controller)
  2527. # to operate in point-to-point slip mode at 9600 baud, calling it "sl0".
  2528. # A 1024 byte receiver ring buffer is allocated. Outgoing packets larger
  2529. # than 256 bytes are fragmented.
  2530. attach asy 0x3f8 4 slip sl0 1024 256 9600
  2531.  
  2532. # Attach the secondary PC asynch card ("com2") to operate in AX.25 mode
  2533. # with an MTU of 576 bytes at 9600 baud with a KISS TNC, calling it "ax0".
  2534. # By default, IP datagrams are sent in UI frames
  2535. attach asy 0x2f8 3 ax25 ax0 1024 576 9600
  2536.  
  2537. # Attach the packet driver loaded at interrupt 0x7e
  2538. # The packet driver is for an Ethernet interface
  2539. attach packet 0x7e ethernet 8 1500
  2540.  
  2541.  
  2542.  
  2543.  
  2544.  
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550.  
  2551.  
  2552.  
  2553.  
  2554.  
  2555.  
  2556.  
  2557.  
  2558.  
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.                            - 40 -
  2579.  
  2580.  
  2581. _5.  _F_T_P _S_u_b_c_o_m_m_a_n_d_s
  2582.  
  2583. During converse mode with an FTP server, everything typed on  the
  2584. console  is  first  examined to see if it is a locally-known com-
  2585. mand. If not, the line is passed intact to the remote  server  on
  2586. the control channel. If it is one of the following commands, how-
  2587. ever, it is executed locally. (Note that this generally  involves
  2588. other  commands  being  sent  to the remote server on the control
  2589. channel.)
  2590.  
  2591. _5._1.  _d_i_r [<_f_i_l_e> | <_d_i_r_e_c_t_o_r_y> [<_l_o_c_a_l _f_i_l_e>]]
  2592.  
  2593. Without arguments, dir requests that a full directory listing  of
  2594. the  remote  server's  current directory be sent to the terminal.
  2595. If one argument is given, this is passed along in the  LIST  com-
  2596. mand;  this  can be a specific file or subdirectory that is mean-
  2597. ingful to the remote file system. If two arguments are given, the
  2598. second  is taken as the local file into which the directory list-
  2599. ing should be put (instead of being sent to  the  console).   The
  2600. PORT command is used before the LIST command is sent.
  2601.  
  2602. _5._2.  _g_e_t <_r_e_m_o_t_e _f_i_l_e> [<_l_o_c_a_l _f_i_l_e>]
  2603.  
  2604. Asks the remote server to send the file specified  in  the  first
  2605. argument.  The second argument, if given, will be the name of the
  2606. file on the local machine; otherwise it will have the  same  name
  2607. as on the remote machine.  The PORT and RETR commands are sent on
  2608. the control channel.
  2609.  
  2610. _5._3.  _h_a_s_h
  2611.  
  2612. A synonym for the verbose 3 command.
  2613.  
  2614. _5._4.  _l_s [<_f_i_l_e> | <_d_i_r_e_c_t_o_r_y> [<_l_o_c_a_l _f_i_l_e>]]
  2615.  
  2616. ls is identical to the dir command except that the "NLST" command
  2617. is sent to the server instead of the "LIST" command. This results
  2618. in an abbreviated directory listing, i.e., one showing  only  the
  2619. file names themselves without any other information.
  2620.  
  2621. _5._5.  _m_g_e_t <_f_i_l_e> [<_f_i_l_e> ...]
  2622.  
  2623. Fetch a collection of files  from  the  server.  File  names  may
  2624. include  wild  card  characters;  they  will  be  interpreted and
  2625. expanded into a list of files by the remote system using the NLST
  2626. command.  The  files  will have the same name on the local system
  2627. that they had on the server.
  2628.  
  2629. _5._6.  _m_k_d_i_r <_r_e_m_o_t_e _d_i_r_e_c_t_o_r_y>
  2630.  
  2631. Creates a directory on the remote machine.
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2639.  
  2640.  
  2641.  
  2642.  
  2643.  
  2644.                            - 41 -
  2645.  
  2646.  
  2647. _5._7.  _m_p_u_t <_f_i_l_e> [<_f_i_l_e> ...]
  2648.  
  2649. Send a collection of files to the server. File names may  include
  2650. wild  card  characters; they will be expanded locally into a list
  2651. of files to be sent. The files will have the  same  name  on  the
  2652. server as on the local system.
  2653.  
  2654. _5._8.  _p_u_t <_l_o_c_a_l _f_i_l_e> [<_r_e_m_o_t_e _f_i_l_e>]
  2655.  
  2656. Asks the remote server to accept data, creating the file named in
  2657. the  first  argument.  The second argument, if given, will be the
  2658. name of the file on the remote machine; otherwise  it  will  have
  2659. the  same  name  as on the local machine.  The PORT and STOR com-
  2660. mands are sent on the control channel.
  2661.  
  2662. _5._9.  _r_m_d_i_r <_r_e_m_o_t_e _d_i_r_e_c_t_o_r_y>
  2663.  
  2664. Deletes a directory on the remote machine.
  2665.  
  2666. _5._1_0.  _t_y_p_e [_a | _i | _l <_b_y_t_e_s_i_z_e>]
  2667.  
  2668. Tells both the local client and remote server the  type  of  file
  2669. that is to be transferred.  The default is 'a', which means ASCII
  2670. (i.e., a text file).  Type 'i' means  _i_m_a_g_e,  i.e.,  binary.   In
  2671. ASCII  mode,  files  are  sent as varying length lines of text in
  2672. ASCII separated by cr/lf sequences; in IMAGE mode, files are sent
  2673. exactly  as they appear in the file system.  ASCII mode should be
  2674. used whenever transferring text between dissimilar  systems  (eg.
  2675. UNIX  and  MS-DOS)  because of their different end-of-line and/or
  2676. end-of-file conventions.   When  exchanging  text  files  between
  2677. machines  of  the same type, either mode will work but IMAGE mode
  2678. is usually faster.  Naturally, when exchanging raw  binary  files
  2679. (executables,  compressed archives, etc) IMAGE mode must be used.
  2680. Type 'l' (logical byte size) is used when exchanging binary files
  2681. with  remote servers having oddball word sizes (eg. DECSYSTEM-10s
  2682. and 20s).  Locally it works exactly like IMAGE,  except  that  it
  2683. notifies  the  remote system how large the byte size is. bytesize
  2684. is typically 8.  The type command sets the  local  transfer  mode
  2685. and generates the TYPE command on the control channel.
  2686.  
  2687. _5._1_1.  _v_e_r_b_o_s_e [_0 | _1 | _2 | _3]
  2688.  
  2689. Set or display the level of message  output  in  file  transfers.
  2690. Verbose 0 gives the least output, and verbose 3 the most, as fol-
  2691. lows:
  2692.  
  2693. 0 - Display error messages only.
  2694. 1 - Display error messages plus a one-line summary after each transfer
  2695.     giving the name of the file, its size, and the transfer time and rate.
  2696. 2 - Display error and summary messages plus the progress messages generated
  2697.     by the remote FTP server. (This setting is the default.)
  2698. 3 - Display all messages. In addition, a "hash mark" (#) is displayed for
  2699.     every 1,000 bytes sent or received.
  2700.  
  2701.  
  2702.  
  2703.  
  2704. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2705.  
  2706.  
  2707.  
  2708.  
  2709.  
  2710.                            - 42 -
  2711.  
  2712.  
  2713. If a command is sent to the  remote  server  because  it  is  not
  2714. recognized  locally, the response is always displayed, regardless
  2715. of the setting of verbose.  This is necessary for  commands  like
  2716. pwd (display working directory), which would otherwise produce no
  2717. message at all if verbose were set to 0 or 1.
  2718.  
  2719.  
  2720.  
  2721.  
  2722.  
  2723.  
  2724.  
  2725.  
  2726.  
  2727.  
  2728.  
  2729.  
  2730.  
  2731.  
  2732.  
  2733.  
  2734.  
  2735.  
  2736.  
  2737.  
  2738.  
  2739.  
  2740.  
  2741.  
  2742.  
  2743.  
  2744.  
  2745.  
  2746.  
  2747.  
  2748.  
  2749.  
  2750.  
  2751.  
  2752.  
  2753.  
  2754.  
  2755.  
  2756.  
  2757.  
  2758.  
  2759.  
  2760.  
  2761.  
  2762.  
  2763.  
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2771.  
  2772.  
  2773.  
  2774.  
  2775.  
  2776.                            - 43 -
  2777.  
  2778.  
  2779. _6.  _D_i_a_l_e_r _S_u_b_c_o_m_m_a_n_d_s
  2780.  
  2781. Each dialer command may (should) have a  different  dialer  file.
  2782. The  file resides in the configuration directory, as specified in
  2783. the Installation section (see chapter 1).  A typical dialer  file
  2784. might be:
  2785.  
  2786.         # Set the speed, and toggle DTR to ensure modem is in command mode.
  2787.         control down
  2788.         wait 3000
  2789.         speed 2400
  2790.         control up
  2791.         wait 3000
  2792.         # Dial, and wait for connection
  2793.         send "atdt555-1212"
  2794.         wait 45000 "CONNECT " speed
  2795.         wait 2000
  2796.         # PAD specific initialization
  2797.         send ""
  2798.         wait 15000 "Terminal ="
  2799.         send "ppp"
  2800.         wait 10000 "
  2801.  
  2802.  
  2803. _6._0._1.  _c_o_n_t_r_o_l _d_o_w_n | _u_p
  2804.  
  2805. Control asy interface.  The down option drops DTR and  RTS.   The
  2806. up option asserts DTR and RTS.
  2807.  
  2808. _6._0._2.  _s_e_n_d "_s_t_r_i_n_g"
  2809.  
  2810. This dialer command will write the specified string to the inter-
  2811. face.   The  string  quote marks are required, and the string may
  2812. not contain embedded control characters.  However, the standard C
  2813. string escape sequences are recognized (\0 should not be used).
  2814.  
  2815. _6._0._3.  _s_p_e_e_d [ _9_6_0_0 | _4_8_0_0 | _2_4_0_0 | _1_2_0_0 | _3_0_0 ]
  2816.  
  2817. This dialer command will set the speed of the interface to one of
  2818. the available speeds.  If the speed is missing, the speed will be
  2819. displayed in the dialer session window.
  2820.  
  2821. _6._0._4.  _w_a_i_t <_m_i_l_l_i_s_e_c_o_n_d_s> [ "_t_e_s_t _s_t_r_i_n_g" ] [ _s_p_e_e_d ]
  2822.  
  2823. If only the time is specified, the dialer pauses for the  desired
  2824. number of milliseconds.
  2825.  
  2826. Otherwise, the dialer reads until the test string is detected  on
  2827. the  interface.  If the string is not detected within the desired
  2828. time, the autodialer will reset.   The  string  quote  marks  are
  2829. required, and the string may not contain embedded control charac-
  2830. ters.  However, the standard C string escape sequences are recog-
  2831. nized (\0 should not be used).
  2832.  
  2833.  
  2834.  
  2835.  
  2836. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2837.  
  2838.  
  2839.  
  2840.  
  2841.  
  2842.                            - 44 -
  2843.  
  2844.  
  2845. Finally, if the _s_p_e_e_d parameter is  specified,  the  dialer  will
  2846. continue  to  read characters until a non-digit is detected.  The
  2847. string read is converted to an  integer,  and  used  to  set  the
  2848. interface  speed.   If  the  trailing  non-digit  is not detected
  2849. within the desired time, or the integer  value  is  not  a  valid
  2850. speed, the autodialer will reset.
  2851.  
  2852.  
  2853.  
  2854.  
  2855.  
  2856.  
  2857.  
  2858.  
  2859.  
  2860.  
  2861.  
  2862.  
  2863.  
  2864.  
  2865.  
  2866.  
  2867.  
  2868.  
  2869.  
  2870.  
  2871.  
  2872.  
  2873.  
  2874.  
  2875.  
  2876.  
  2877.  
  2878.  
  2879.  
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.  
  2889.  
  2890.  
  2891.  
  2892.  
  2893.  
  2894.  
  2895.  
  2896.  
  2897.  
  2898.  
  2899.  
  2900.  
  2901.  
  2902. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2903.  
  2904.  
  2905.  
  2906.  
  2907.  
  2908.                            - 45 -
  2909.  
  2910.  
  2911. _7.  _T_h_e /_f_t_p_u_s_e_r_s _F_i_l_e
  2912.  
  2913. Since MS-DOS is a single-user operating system (some might say it
  2914. is  a glorified bootstrap loader), it provides no access control;
  2915. all files can be read, written or deleted by the local user.   It
  2916. is  usually  undesirable  to give such open access to a system to
  2917. remote network users.  Net.exe therefore provides its own  access
  2918. control mechanisms.
  2919.  
  2920. The file /ftpusers controls remote FTP and mailbox  access.   The
  2921. FTP  default  is  _n_o access; if this file does not exist, the FTP
  2922. server will be unusable.  A remote user must first  "log  in"  to
  2923. the  system  with the USER and PASS commands, giving a valid name
  2924. and password listed in /ftpusers, before he or she  can  transfer
  2925. files.
  2926.  
  2927. Each entry in /ftpusers consists of a single line of the form
  2928.  
  2929. username password /path permissions
  2930.  
  2931.  
  2932. There must be exactly four fields, and there must be exactly  one
  2933. space  between  each field.  Comments may be added after the last
  2934. field. Comment lines begin with '#' in column one.
  2935.  
  2936. username is the user's login name.
  2937.  
  2938. password is the required password.  Note that this  is  in  plain
  2939. text;  therefore  it is not a good idea to give general read per-
  2940. mission to the root directory.   A  password  of  '*'  (a  single
  2941. asterisk) means that any password is acceptable.
  2942.  
  2943. /path is the allowable prefix on accessible  files.   Before  any
  2944. file  or directory operation, the current directory and the user-
  2945. specified file name are joined to form an absolute path  name  in
  2946. "canonical"  form  (i.e.,  a full path name starting at the root,
  2947. with "./" and "../" references, as well as redundant /'s,  recog-
  2948. nized and removed). The result MUST begin with the allowable path
  2949. prefix; if not, the operation is denied.  This field must  always
  2950. begin with a "/", i.e., at the root directory.
  2951.  
  2952. permissions is a decimal number  granting  permission  for  read,
  2953. create  and write operations.  If the low order bit (0x1) is set,
  2954. the user is allowed to read a file subject to the path name  pre-
  2955. fix  restriction.   If  the  next  bit  (0x2) is set, the user is
  2956. allowed to create a new file if it does not overwrite an existing
  2957. file.   If  the  third  bit  (0x4) is set, the user is allowed to
  2958. write a file even if it overwrites an existing file, and in addi-
  2959. tion he may delete files.  Again, all operations are allowed sub-
  2960. ject to the path name prefix  restrictions.  Permissions  may  be
  2961. combined  by  adding  bits,  for example, 0x3 (= 0x2 + 0x1) means
  2962. that the user is  given  read  and  create  permission,  but  not
  2963. overwrite/delete permission.
  2964.  
  2965.  
  2966.  
  2967.  
  2968. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  2969.  
  2970.  
  2971.  
  2972.  
  2973.  
  2974.                            - 46 -
  2975.  
  2976.  
  2977. For example, suppose /ftpusers on machine  pc.ka9q.ampr.org  con-
  2978. tains the line
  2979.  
  2980. friendly test /testdir 7
  2981.  
  2982.  
  2983. A session using this account would look like this:
  2984.  
  2985. net> ftp pc.ka9q.ampr.org
  2986. Resolving pc.ka9q.ampr.org... Trying 128.96.160.1...
  2987. FTP session 1 connected to pc.ka9q.ampr.org
  2988. 220 pc.ka9q.ampr.org FTP version 900418 ready at Mon May 7 16:27:18 1990
  2989. Enter user name: friendly
  2990. 331 Enter PASS command
  2991. Password: test [not echoed]
  2992. 230 Logged in
  2993. ftp>
  2994.  
  2995.  
  2996. The user now has read, write, overwrite and delete privileges for
  2997. any file under /testdir; he may not access any other files.
  2998.  
  2999. Here are some more sample entries in /ftpusers:
  3000.  
  3001. karn foobar / 7         # User "karn" with password "foobar" may read,
  3002.                         # write, overwrite and delete any file on the
  3003.                         # system.
  3004.  
  3005. guest bletch /g/bogus 3 # User "guest" with password "bletch" may read
  3006.                         # any file under /g/bogus and its subdirectories,
  3007.                         # and may create a new file as long as it does
  3008.                         # not overwrite an existing file. He may NOT
  3009.                         # delete any files.
  3010.  
  3011. anonymous * /public 1   # User "anonymous" (any password) may read files
  3012.                         # under /public and its subdirectories; he may
  3013.                         # not create, overwrite or delete any files.
  3014.  
  3015.  
  3016. This last entry is the standard convention for keeping a  reposi-
  3017. tory  of public files; in particular, the username "anonymous" is
  3018. an established ARPA convention.
  3019.  
  3020.  
  3021.  
  3022.  
  3023.  
  3024.  
  3025.  
  3026.  
  3027.  
  3028.  
  3029.  
  3030.  
  3031.  
  3032.  
  3033.  
  3034. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3035.  
  3036.  
  3037.  
  3038.  
  3039.  
  3040.                            - 47 -
  3041.  
  3042.  
  3043. _8.  _T_h_e domain.txt _F_i_l_e
  3044.  
  3045. Net.exe translates domain names (eg.  "pc.ka9q.ampr.org")  to  IP
  3046. addresses  (eg.  128.96.160.3)  through  the  use  of an Internet
  3047. Domain Name resolver and a local "cache" file, domain.txt.  When-
  3048. ever  the  user  specifies  a  domain  name,  the  local cache is
  3049. searched for the desired entry.  If it is present, it is used; if
  3050. not,  and  if domain name server(s) have been configured, a query
  3051. is sent over the network to the current server.   If  the  server
  3052. responds,  the  answer is added to the domain.txt file for future
  3053. use.  If the server does not respond, any additional  servers  on
  3054. the  list  are tried in a round-robin fashion until one responds,
  3055. or the retry limit is reached (see the domain retry command).  If
  3056. domain.txt  does  not  contain the desired entry and there are no
  3057. configured domain name  servers,  then  the  request  immediately
  3058. fails.
  3059.  
  3060. If a domain name server is available, and if  all  references  to
  3061. host-ids  in  your  /autoexec.net  file are in IP address format,
  3062. then it is possible to start with a completely  empty  domain.txt
  3063. file and have net.exe build it for you.  However, you may wish to
  3064. add your own entries to domain.txt, either because you prefer  to
  3065. use symbolic domain names in your /autoexec.net file or you don't
  3066. have access to a domain server and you need to create entries for
  3067. all of the hosts you may wish to access.
  3068.  
  3069. Each entry takes one line, and the fields are  separated  by  any
  3070. combination of tabs or spaces.  For example:
  3071.  
  3072. pc.ka9q.ampr.org.       IN      A       128.96.160.3
  3073.  
  3074. IN is the _c_l_a_s_s of the record.  It means _I_n_t_e_r_n_e_t, and it will be
  3075. found  in all entries.  A is the _t_y_p_e of the record, and it means
  3076. that this is an _a_d_d_r_e_s_s  record.   Domain  name  pc.ka9q.ampr.org
  3077. therefore has Internet address 128.96.160.3.
  3078.  
  3079. Another possible entry is the CNAME (Canonical Name) record.  For
  3080. example:
  3081.  
  3082. ka9q.ampr.org.          IN      CNAME   pc.ka9q.ampr.org.
  3083.  
  3084. This says that domain name "ka9q.ampr.org" is actually  an  alias
  3085. for   the   system  with  (primary,  or  _c_a_n_o_n_i_c_a_l)  domain  name
  3086. "pc.ka9q.ampr.org." When a domain name having a CNAME  record  is
  3087. given  to net.exe, the system automatically follows the reference
  3088. to the canonical name and returns the IP address associated  with
  3089. that entry.
  3090.  
  3091. Entries added automatically by net.exe will  have  an  additional
  3092. field  between  the  domain  name  and the class (IN) field.  For
  3093. example:
  3094.  
  3095. pc.ka9q.ampr.org.       3600    IN      A       128.96.160.3
  3096.  
  3097.  
  3098.  
  3099.  
  3100. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3101.  
  3102.  
  3103.  
  3104.  
  3105.  
  3106.                            - 48 -
  3107.  
  3108.  
  3109. This is the _t_i_m_e-_t_o-_l_i_v_e value, in seconds, associated  with  the
  3110. record  received from the server. Clients (such as net.exe) cach-
  3111. ing these records are supposed to delete them after the  time-to-
  3112. live  interval has expired, allowing for the possibility that the
  3113. information in the record may become out of date.
  3114.  
  3115. This implementation of net.exe will decrement the  TTL  to  zero,
  3116. but will not delete the record unless the "clean" flag is on (see
  3117. the domain cache clean command).  When a  remote  server  is  not
  3118. available, the old entry will be used.
  3119.  
  3120. When the _T_T_L value is missing (as in  the  examples  above),  the
  3121. record  will  never  expire,  and must be managed by hand.  Since
  3122. domain.txt is a plain text file, it may be easily edited  by  the
  3123. user to add, change or delete records.
  3124.  
  3125. Additional types of records, include NS  (name  server)  and  SOA
  3126. (start  of authority) may appear in domain.txt from remote server
  3127. responses. These are  not  currently  used  by  net.exe  but  are
  3128. retained  for  future development (such as the incorporation of a
  3129. domain name server into net.exe itself).
  3130.  
  3131.  
  3132.  
  3133.  
  3134.  
  3135.  
  3136.  
  3137.  
  3138.  
  3139.  
  3140.  
  3141.  
  3142.  
  3143.  
  3144.  
  3145.  
  3146.  
  3147.  
  3148.  
  3149.  
  3150.  
  3151.  
  3152.  
  3153.  
  3154.  
  3155.  
  3156.  
  3157.  
  3158.  
  3159.  
  3160.  
  3161.  
  3162.  
  3163.  
  3164.  
  3165.  
  3166. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3167.  
  3168.  
  3169.  
  3170.  
  3171.  
  3172.                            - 49 -
  3173.  
  3174.  
  3175. _9.  _S_e_t_t_i_n_g _B_u_f_s_i_z_e, _P_a_c_l_e_n, _M_a_x_f_r_a_m_e, _M_T_U, _M_S_S _a_n_d _W_i_n_d_o_w
  3176.  
  3177. Many net.exe users are confused by these parameters  and  do  not
  3178. know  how  to  set  them properly. This chapter will first review
  3179. these parameters and then discuss how to choose values for  them.
  3180. Special  emphasis  is given to avoiding interoperability problems
  3181. that may appear when communicating with  non-net.exe  implementa-
  3182. tions of AX.25.
  3183.  
  3184. _9._1.  _H_a_r_d_w_a_r_e _P_a_r_a_m_e_t_e_r_s
  3185.  
  3186.  
  3187. _9._1._1.  _B_u_f_s_i_z_e
  3188.  
  3189. This parameter is required by most  of  net.exe's  built-in  HDLC
  3190. drivers  (eg. those for the DRSI PCPA and the Paccomm PC-100). It
  3191. specifies the size  of  the  buffer  to  be  allocated  for  each
  3192. receiver  port.  HDLC  frames  larger  than  this value cannot be
  3193. received.
  3194.  
  3195. There is no default bufsize; it must be specified in  the  attach
  3196. command for the interface.
  3197.  
  3198. _9._2.  _A_X_2_5 _P_a_r_a_m_e_t_e_r_s
  3199.  
  3200. _9._2._1.  _P_a_c_l_e_n
  3201.  
  3202. Paclen limits the size of the data field  in  an  AX.25  I-frame.
  3203. This  value  does  _n_o_t include the AX.25 protocol header (source,
  3204. destination and digipeater addresses).
  3205.  
  3206. Since unconnected-mode (datagram)  AX.25  uses  UI  frames,  this
  3207. parameter has no effect in unconnected mode.
  3208.  
  3209. The default value of paclen is 256 bytes.
  3210.  
  3211. _9._2._2.  _M_a_x_f_r_a_m_e
  3212.  
  3213. This parameter controls the number of I-frames that  net.exe  may
  3214. send  on  an AX.25 connection before it must stop and wait for an
  3215. acknowledgement.  Since the AX.25/LAPB sequence number field is 3
  3216. bits wide, this number cannot be larger than 7.
  3217.  
  3218. Since unconnected-mode (datagram) AX.25 uses UI  frames  that  do
  3219. not  have  sequence  numbers,  this  parameter  does _n_o_t apply to
  3220. unconnected mode.
  3221.  
  3222. The default value of maxframe in net.exe is 1 frame.
  3223.  
  3224. _9._3.  _I_P _a_n_d _T_C_P _P_a_r_a_m_e_t_e_r_s
  3225.  
  3226. _9._3._1.  _M_T_U
  3227.  
  3228. The MTU (Maximum Transmission Unit)  is  an  interface  parameter
  3229.  
  3230.  
  3231.  
  3232. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3233.  
  3234.  
  3235.  
  3236.  
  3237.  
  3238.                            - 50 -
  3239.  
  3240.  
  3241. that  limits the size of the largest IP datagram that it may han-
  3242. dle.  IP datagrams routed to an interface that  are  larger  than
  3243. its MTU are each split into two or more _f_r_a_g_m_e_n_t_s.  Each fragment
  3244. has its own IP header and is handled by the network as if it were
  3245. a distinct IP datagram, but when it arrives at the destination it
  3246. is held by the IP layer until all of the other fragments  belong-
  3247. ing to the original datagram have arrived. Then they are reassem-
  3248. bled back into the complete, original IP  datagram.  The  minimum
  3249. acceptable  interface MTU is 28 bytes: 20 bytes for the IP (frag-
  3250. ment) header, plus 8 bytes of data.
  3251.  
  3252. There is no default MTU in net.exe; it must be explicitly  speci-
  3253. fied for each interface as part of the attach command.
  3254.  
  3255. _9._3._2.  _M_S_S
  3256.  
  3257. MSS (Maximum Segment Size) is a TCP-level parameter  that  limits
  3258. the  amount of data that the _r_e_m_o_t_e TCP will send in a single TCP
  3259. packet. MSS values are exchanged in the SYN (connection  request)
  3260. packets that open a TCP connection. In the net.exe implementation
  3261. of TCP, the MSS actually used by TCP is further reduced in  order
  3262. to  avoid  fragmentation  at the local IP interface. That is, the
  3263. local TCP asks IP for the MTU of the interface that will be  used
  3264. to reach the destination. It then subtracts 40 from the MTU value
  3265. to allow for the overhead of the  TCP  and  IP  headers.  If  the
  3266. result  is  less than the MSS received from the remote TCP, it is
  3267. used instead.
  3268.  
  3269. The default value of MSS is 512 bytes.
  3270.  
  3271. _9._3._3.  _W_i_n_d_o_w
  3272.  
  3273. This is a TCP-level parameter that controls  how  much  data  the
  3274. local  TCP  will allow the remote TCP to send before it must stop
  3275. and wait for an acknowledgement. The actual window value used  by
  3276. TCP  when  deciding  how much more data to send is referred to as
  3277. the _e_f_f_e_c_t_i_v_e _w_i_n_d_o_w.  This is the smaller  of  two  values:  the
  3278. window advertised by the remote TCP minus the unacknowledged data
  3279. in flight, and the _c_o_n_g_e_s_t_i_o_n _w_i_n_d_o_w, an  automatically  computed
  3280. time-varying estimate of how much data the network can handle.
  3281.  
  3282. The default value of Window is 2048 bytes.
  3283.  
  3284. _9._4.  _D_i_s_c_u_s_s_i_o_n
  3285.  
  3286.  
  3287. _9._4._1.  _I_P _F_r_a_g_m_e_n_t_a_t_i_o_n _v_s _A_X._2_5 _S_e_g_m_e_n_t_a_t_i_o_n
  3288.  
  3289. IP-level fragmentation often makes it  possible  to  interconnect
  3290. two  dissimilar  networks, but it is best avoided whenever possi-
  3291. ble.  One reason is that when a single IP fragment is  lost,  all
  3292. other  fragments  belonging  to the same datagram are effectively
  3293. also lost and the entire datagram must be  retransmitted  by  the
  3294. source.   Even  without loss, fragments require the allocation of
  3295.  
  3296.  
  3297.  
  3298. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3299.  
  3300.  
  3301.  
  3302.  
  3303.  
  3304.                            - 51 -
  3305.  
  3306.  
  3307. temporary buffer memory at the destination, and it is never  easy
  3308. to decide how long to wait for missing fragments before giving up
  3309. and discarding those that have  already  arrived.   A  reassembly
  3310. timer  controls  this  process.  In net.exe it is (re)initialized
  3311. with the ip rtimer parameter (default 30 seconds)  whenever  pro-
  3312. gress is made in reassembling a datagram (i.e., a new fragment is
  3313. received).  It is not necessary that all of the fragments belong-
  3314. ing  to  a datagram arrive within a single timeout interval, only
  3315. that the interval between fragments be less than the timeout.
  3316.  
  3317. Most subnetworks that carry IP have MTUs of 576 bytes or more, so
  3318. interconnecting  them  with subnetworks having smaller values can
  3319. result in considerable fragmentation. For this reason, IP  imple-
  3320. mentors  working  with  links  or  subnets having unusually small
  3321. packet size limits are encouraged to use  _t_r_a_n_s_p_a_r_e_n_t  _f_r_a_g_m_e_n_t_a_-
  3322. _t_i_o_n,  that  is, to devise schemes to break up large IP datagrams
  3323. into a sequence of link or subnet  frames  that  are  immediately
  3324. reassembled  on the other end of the link or subnet into the ori-
  3325. ginal, whole IP datagram without the use of  IP-level  fragmenta-
  3326. tion.  Such  a  scheme  is provided in AX.25 Version 2.1.  It can
  3327. break a large IP or NET/ROM datagram into  a  series  of  paclen-
  3328. sized  AX.25 segments (not to be confused with TCP segments), one
  3329. per AX.25 I-frame, for transmission and reassemble  them  into  a
  3330. single datagram at the other end of the link before handing it up
  3331. to the IP or NET/ROM  module.   Unfortunately,  the  segmentation
  3332. procedure  is a new feature in AX.25 and is not yet widely imple-
  3333. mented; in fact, net.exe is so far the only known implementation.
  3334. This  creates  some interoperability problems between net.exe and
  3335. non-net.exe nodes, in particular, standard  NET/ROM  nodes  being
  3336. used  to carry IP datagrams. This problem is discussed further in
  3337. the section on setting the MTU.
  3338.  
  3339. _9._4._2.  _S_e_t_t_i_n_g _p_a_c_l_e_n _a_n_d _b_u_f_s_i_z_e
  3340.  
  3341. The more data you put into an AX.25  I  frame,  the  smaller  the
  3342. AX.25  headers  are in relation to the total frame size. In other
  3343. words, by increasing paclen, you lower the AX.25  protocol  over-
  3344. head. Also, large data packets reduce the overhead of keying up a
  3345. transmitter, and this can be  an  important  factor  with  higher
  3346. speed modems. On the other hand, large frames make bigger targets
  3347. for noise and interference. Each link has  an  optimum  value  of
  3348. paclen that is best discovered by experiment.
  3349.  
  3350. Another thing to remember when setting paclen is that  the  AX.25
  3351. version  2.0  specification  limits  it  to  256  bytes. Although
  3352. net.exe can handle much larger values, some other AX.25 implemen-
  3353. tations (including digipeaters) cannot and this may cause intero-
  3354. perability problems. Even net.exe may have trouble  with  certain
  3355. KISS  TNCs  because  of fixed-size buffers. The original KISS TNC
  3356. code for the TNC-2 by K3MC can handle frames limited in size only
  3357. by the RAM in the TNC, but some other KISS TNCs cannot.
  3358.  
  3359. Net.exe's built-in HDLC drivers (SCC, PC-100, DRSI, etc) allocate
  3360. receive  buffers according to the maximum expected frame size, so
  3361.  
  3362.  
  3363.  
  3364. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3365.  
  3366.  
  3367.  
  3368.  
  3369.  
  3370.                            - 52 -
  3371.  
  3372.  
  3373. it is important that these devices be configured with the correct
  3374. bufsize. To do this, you must know the size of the largest possi-
  3375. ble frame that can be received.  The  paclen  parameter  controls
  3376. only  the  size of the data field in an I-frame and not the total
  3377. size of the frame as it appears on the air. The AX.25 spec allows
  3378. up  to  8 digipeaters, so the largest possible frame is (paclen +
  3379. 72) bytes. So you should make bufsize at least this large.
  3380.  
  3381. Another important consideration is that the more recent  versions
  3382. of  NOS  improve interrupt response by maintaining a special pool
  3383. of buffers for use by the receive routines.   These  buffers  are
  3384. currently  fixed  in  size  to 2048 bytes and this can be changed
  3385. only by editing config.h and recompiling NOS.  This  limits  buf-
  3386. size;  in  fact,  attempting  to set a larger value may cause the
  3387. driver not to work at all. This situation can be detected by run-
  3388. ning  the  memory status command and looking for a non-zero count
  3389. of Ibuffail events, although these events can  also  occur  occa-
  3390. sionally during normal operation.
  3391.  
  3392. One of the drawbacks of AX.25 that there is no way for  one  sta-
  3393. tion  to tell another how large a packet it is willing to accept.
  3394. This requires the stations sharing a channel to agree  beforehand
  3395. on a maximum packet size.  TCP is different, as we shall see.
  3396.  
  3397. _9._4._3.  _S_e_t_t_i_n_g _M_a_x_f_r_a_m_e
  3398.  
  3399. For best performance on a  half-duplex  radio  channel,  maxframe
  3400. should always be set to 1. The reasons are explained in the paper
  3401. _L_i_n_k _L_e_v_e_l _P_r_o_t_o_c_o_l_s _R_e_v_i_s_i_t_e_d by  Brian  Lloyd  and  Phil  Karn,
  3402. which  appeared  in the proceedings of the ARRL 5th Computer Net-
  3403. working Conference in 1986.
  3404.  
  3405. _9._4._4.  _S_e_t_t_i_n_g _M_T_U
  3406.  
  3407. TCP/IP header overhead considerations similar  to  those  of  the
  3408. AX.25 layer when setting paclen apply when choosing an MTU.  How-
  3409. ever, certain subnetwork types supported by  net.exe  have  well-
  3410. established MTUs, and these should always be used unless you know
  3411. what you're doing: 1500 bytes for Ethernet,  and  508  bytes  for
  3412. ARCNET.   The  MTU  for  PPP  is  automatically  negotiated,  and
  3413. defaults to 1500.  Other subnet types, including SLIP and  AX.25,
  3414. are not as well standardized.
  3415.  
  3416. SLIP has no official MTU, but the most common implementation (for
  3417. BSD  UNIX)  uses  an  MTU of 1006 bytes.  Although net.exe has no
  3418. hard wired limit on the size of a received SLIP  frame,  this  is
  3419. not true for other systems.  Interoperability problems may there-
  3420. fore result if larger MTUs are used in net.exe.
  3421.  
  3422. Choosing an MTU for an AX.25 interface is more complex. When  the
  3423. interface operates in datagram (UI-frame) mode, the paclen param-
  3424. eter does not apply. The MTU effectively becomes  the  paclen  of
  3425. the  link.   However, as mentioned earlier, large packets sent on
  3426. AX.25 _c_o_n_n_e_c_t_i_o_n_s are automatically segmented  into  I-frames  no
  3427.  
  3428.  
  3429.  
  3430. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3431.  
  3432.  
  3433.  
  3434.  
  3435.  
  3436.                            - 53 -
  3437.  
  3438.  
  3439. larger  than paclen bytes.  Unfortunately, as also mentioned ear-
  3440. lier, net.exe is so far the only known implementation of the  new
  3441. AX.25  segmentation procedure. This is fine as long as all of the
  3442. NET/ROM nodes along a path are running  net.exe,  but  since  the
  3443. main  reason net.exe supports NET/ROM is to allow use of existing
  3444. NET/ROM networks, this is unlikely.
  3445.  
  3446. So it is usually important to avoid AX.25 segmentation when  run-
  3447. ning  IP  over  NET/ROM.  The way to do this is to make sure that
  3448. packets larger than paclen are never handed to AX.25.  A  NET/ROM
  3449. transport  header  is  5  bytes long and a NET/ROM network header
  3450. takes 15 bytes, so 20 bytes must be added to the size  of  an  IP
  3451. datagram  when figuring the size of the AX.25 I-frame data field.
  3452. If paclen is 256, this leaves 236 bytes for the IP datagram. This
  3453. is  the default MTU of the netrom pseudo-interface, so as long as
  3454. paclen is at least 256 bytes, AX.25  segmentation  can't  happen.
  3455. But  if  smaller  values  of paclen are used, the netrom MTU must
  3456. also be reduced with the ifconfig command.
  3457.  
  3458. On the other hand, if you're running IP directly on top of AX.25,
  3459. chances  are  all  of  the  nodes are running net.exe and support
  3460. AX.25 segmentation.  In this case there is no reason not to use a
  3461. larger MTU and let AX.25 segmentation do its thing. If you choose
  3462. an MTU on the order of 1000-1500 bytes,  you  can  largely  avoid
  3463. IP-level fragmentation and reduce TCP/IP-level header overhead on
  3464. file transfers to a very low level.  And you are  still  free  to
  3465. pick whatever paclen value is appropriate for the link.
  3466.  
  3467. _9._4._5.  _S_e_t_t_i_n_g _M_S_S
  3468.  
  3469. The setting of this TCP-level parameter is somewhat less critical
  3470. than  the IP and AX.25 level parameters already discussed, mainly
  3471. because it is automatically lowered according to the MTU  of  the
  3472. local  interface  when a connection is created. Although this is,
  3473. strictly speaking, a protocol layering violation (TCP is not sup-
  3474. posed to have any knowledge of the workings of lower layers) this
  3475. technique does work well in practice.  However, it can be fooled;
  3476. for  example, if a routing change occurs after the connection has
  3477. been opened and the new local interface has a  smaller  MTU  than
  3478. the previous one, IP fragmentation may occur in the local system.
  3479.  
  3480. The only drawback to setting a large MSS is that it  might  cause
  3481. avoidable  fragmentation  at  some other point within the network
  3482. path if it includes a "bottleneck" subnet  with  an  MTU  smaller
  3483. than  that  of  the  local  interface.   (Unfortunately, there is
  3484. presently no way to know when this is the case.  There is ongoing
  3485. work  within  the  Internet  Engineering  Task  Force  on  a "MTU
  3486. Discovery" procedure to determine the largest datagram  that  may
  3487. be  sent  over  a given path without fragmentation, but it is not
  3488. yet complete.) Also, since the MSS you specify  is  sent  to  the
  3489. remote  system,  and  not all other TCPs do the MSS-lowering pro-
  3490. cedure yet, this might cause the remote  system  to  generate  IP
  3491. fragments unnecessarily.
  3492.  
  3493.  
  3494.  
  3495.  
  3496. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3497.  
  3498.  
  3499.  
  3500.  
  3501.  
  3502.                            - 54 -
  3503.  
  3504.  
  3505. On the other hand, a too-small MSS can result in  a  considerable
  3506. performance  loss,  especially  when operating over fast LANs and
  3507. networks that can handle larger packets. So the  best  value  for
  3508. MSS is probably 40 less than the largest MTU on your system, with
  3509. the 40-byte margin allowing for the TCP and IP headers. For exam-
  3510. ple,  if  you  have  a SLIP interface with a 1006 byte MTU and an
  3511. Ethernet interface with a 1500 byte MTU, set MSS to  1460  bytes.
  3512. This allows you to receive maximum-sized Ethernet packets, assum-
  3513. ing the path to your system does not have any bottleneck  subnets
  3514. with smaller MTUs.
  3515.  
  3516. _9._4._6.  _S_e_t_t_i_n_g _W_i_n_d_o_w
  3517.  
  3518. A sliding window protocol like TCP cannot transfer more than  one
  3519. window's  worth  of  data  per  round trip time interval. So this
  3520. TCP-level parameter controls the ability of  the  remote  TCP  to
  3521. keep a long "pipe" full. That is, when operating over a path with
  3522. many hops, offering a large TCP window will help keep  all  those
  3523. hops busy when you're receiving data. On the other hand, offering
  3524. too large a window can congest the network if  it  cannot  buffer
  3525. all  that  data. Fortunately, new algorithms for dynamic control-
  3526. ling the effective TCP flow control window  have  been  developed
  3527. over  the  past  few  years and are now widely deployed.  Net.exe
  3528. includes them, and you can watch them  in  action  with  the  tcp
  3529. status  <tcb>  or  socket  <sockno>  commands.  Look at the cwind
  3530. (congestion window) value.
  3531.  
  3532. In most cases it is safe to set the TCP window to a small integer
  3533. multiple  of  the  MSS  (eg.  4 times), or larger if necessary to
  3534. fully utilize a high bandwidth*delay product path. One  thing  to
  3535. keep  in  mind, however, is that advertising a certain TCP window
  3536. value declares that the system has that much buffer space  avail-
  3537. able  for  incoming  data.  Net.exe does not actually preallocate
  3538. this space; it keeps it in a common pool and may well  "overbook"
  3539. it,  exploiting  the  fact that many TCP connections are idle for
  3540. long periods and gambling that most applications will read incom-
  3541. ing data from an active connection as soon as it arrives, thereby
  3542. quickly freeing the buffer memory.  However, it  is  possible  to
  3543. run  net.exe  out  of  memory  if  excessive TCP window sizes are
  3544. advertised and either the applications go to  sleep  indefinitely
  3545. (eg.  suspended Telnet sessions) or a lot of out-of-sequence data
  3546. arrives.  It is wise to keep an eye on the  amount  of  available
  3547. memory  and  to decrease the TCP window size (or limit the number
  3548. of simultaneous connections) if it gets too low.
  3549.  
  3550. Depending on the channel access method and link  level  protocol,
  3551. the  use  of  a  window setting that exceeds the MSS may cause an
  3552. increase in channel collisions. In particular, collisions between
  3553. data  packets  and  returning acknowledgements during a bulk file
  3554. transfer may become common. Although this is, strictly  speaking,
  3555. not TCP's fault, it is possible to work around the problem at the
  3556. TCP level by decreasing the window so that the protocol  operates
  3557. in  stop-and-wait  mode.  This is done by making the window value
  3558. equal to the MSS.
  3559.  
  3560.  
  3561.  
  3562. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3563.  
  3564.  
  3565.  
  3566.  
  3567.  
  3568.                            - 55 -
  3569.  
  3570.  
  3571. _9._5.  _S_u_m_m_a_r_y
  3572.  
  3573. In most cases, the default values provided by net.exe for each of
  3574. these  parameters will work correctly and give reasonable perfor-
  3575. mance. Only in special circumstances such  as  operation  over  a
  3576. very  poor  link or experimentation with high speed modems should
  3577. it be necessary to change them.
  3578.  
  3579.  
  3580.  
  3581.  
  3582.  
  3583.  
  3584.  
  3585.  
  3586.  
  3587.  
  3588.  
  3589.  
  3590.  
  3591.  
  3592.  
  3593.  
  3594.  
  3595.  
  3596.  
  3597.  
  3598.  
  3599.  
  3600.  
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.  
  3610.  
  3611.  
  3612.  
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619.  
  3620.  
  3621.  
  3622.  
  3623.  
  3624.  
  3625.  
  3626.  
  3627.  
  3628. updated by Bill SimpsonMarch 7, 1991           March 3, 1991
  3629.  
  3630.  
  3631.